Posts tagged Flash
Position: Team Leader and Lead Developer in Alensa Online – Software Development department
I was part of Alensa team between January 2007 and August 2008. Only the opportunity to study Media Informatics Master, held by RWTH Aachen University, could gave me enough reasons to leave Alensa Online that I enjoyed so much for almost two years.
I was in charge with our brand new solution for an online Healthcare project – Alensa Online. The Alensa Online Shopping site (www.alensa.ro) consists of an internet healthcare platform in Europe that would simplify research and self education related to health issues, and provides the customers with an interface allowing them to easily get their health questions answered by professionals. It was first developed by a third party company, then I took over the responsibility of developing and maintaining the solution.
My responsibilities were quite complex because I was the first hired person, very similar with Softwise company. This reminded me about the joy and responsibility that comes with this. Another nice surprise was to find in person of Mr. Alex Savic, the CEO of the company, a friend with whom I shared both technical discussions and personal development ones, he was one the most supportive about my decision to study in RWTH Aachen.
Shortly, at Alensa Online I were in charge with:
- Architecting and developing the web based solution using Microsoft ASP.NET / C# and SQL 2005 Server technologies;
- Performing server administration, configuration and maintenance for the Windows 2003 server, for IIS 6 and for SQL 2005 database server;
- Executing architectural modifications in order to make the website user friendly;
- Identifying, designing and developing solutions;
- Periodically testing the site functionalities and thus creating a real test environment, test cases and bug fixes;
- Performing code review, corrections and code optimization;
- Analyzing hardware/software requirements and proposing hardware/software improvements and suggestions (for example, choosing an appropriate hosting partner);
- Implementing real time traffic analysis tool to help the management department;
- Conducting internal training for his colleagues. (more…)
Final preparations for tomorrow’s big show! See below the latest Flash movie.
We added :
- sounds in our application, allowing user to get auditive feedback
- background and confirmation for hit sounds for improving the User Experience, creating an immersive experience who tries to transpose the user into the real wood atmosphere
- self generating levels, allowing users to improve themselves beyond our ideas about their possibilities: the user gets 60 seconds levels in which he has to hit more and more animals as he becomes better in targeting ( and in ball retrieval )
- changed the aspect ratio of the game from 4:3 to 16:9 to better use the whiteboard’s surface
- we dropped a lower right sensor from our latest setup to improve the quality of sensor reading. The reason is that wooden board conducts very well the sound. Thus, too close sensors can receive same signal in almost the same moment, given false positive responses.
Since last week the Flash application changed- I added support for numerical keys for hitting. We mapped the numerical keys 1 to 6 to the 6 animals positions that can be hit. This way, it is enough to press a key to simulate the throw of a ball.
The reason behind this application architectural change is that we needed an smart way to simulate the sensors that were hit, without actually having the entire setup in our workplace.
This week we work also on the User Interface – the Flash GUI. It was challenging since neither me nor Loredana had previous experience in creating games under this application.
Because of this fact, we searched for some advices on the net and after quite a long trial and errors we found something interesting here . Even that it didn’t met all requirements, this tutorial was what we needed to get a quick start.
The animal images are free clip arts taken from http://www.free-clipart-
After following the steps and understood the concepts,we modified the application to :
- Change the resolution, as it has to run on a projector
- Redesign the entire scene graphics, but keeping basic elements like scoring and timer.
- Change the game’s AI from
- how many simultaneously balloons you can hit in a specific period of time to
- having only one target available at one time and you can get another one only if you hit the current one
- Remove the old targets and create 6 new ones more appealing.
- Implement the Arduino interface classes taken from here.
A game should not have only a great idea, but also nice graphical interface. For this, we created an immersive forest environment where the user to be able to ‘hunt’ some animals.
Underneath is the background of the application:
From the last lab we had a week of accomplishments:
- we set our hardware to Arduino platform
- completed on Monday a little programming and testing of the hardware platform
- decided the final idea of the game
- and also set Adobe Flash as our interface and display application
The idea of the game remains as presented a week ago. We will have a screen acting as a pressure sensor (composed from at least 9 sensors to be more precise about the user’s hit point).
The Arduino board will be linked with the sensors and will provide via USB the signals to the serial port. Flash will be on top, acting as a mix of a Controller of the user’s input gathered by the interface and providing the data for the View, thus creating a fully ModelViewController implementation.
The advantages of the MVC will enable us to quickly create an application, easy bug removal and improved User Experience by easy customization of the View.
In a previous post I explained the facts that forced us to re-think our project idea. Basically, our cool idea of an iPhone tied to a skateboard to create a exertion game require too much programming time. So we searched another idea who is required to be simpler and easy to be implemented in the remaining time.
So we got us a round table (the ones in BIT cafeteria are the best!) and put our minds to work.
First step : Use the Initial Design Techniques – Brainstorming (as learned in DIS I)
Our goal: collect as many ideas of exertion game as we can
Defer judgment, no criticism, no rejection of ideas
Include all ideas, allow also the leapfrog ideas
1. Virtual basket
2. Ping-pong game to the wall
4. Throw a ball to a target
6. Throwing paper balls to garbage – fun in offices
After some debate we agreed to pursue in implementing the 4th idea. We will try to create an exertion game which will be composed from:
- a board which will act like a hit sensitive projection screen,
- a projector to display the target on the screen
- the software behind to calculate:
- hit points,
- decide if user hit the target
- scoring and level finishing
To have a clear idea of our game we created also a small storyboard:
In the last meeting, our tutors, Mr. Heller and Mr. Karrer, shared with us some of their experience using the sensors which made us reconsider the project idea.
Because of the new introduction in iPhone programming and the rich set of sensors of this device, our project envisioned an iPhone attached to the board in order to track the skateboard movements. The data pulled out by the iPhone is the initial acceleration (the one when the user starts riding with the board), and lateral or up-down acceleration when he does turns or jumps with the board.
First, the iPhone accelerometer won’t do the trick of getting all the information needed from the board. As it outputs acceleration, we would have to integrate once to get the velocity and twice to get the position. This gets us into a lot of approximations which aren’t suited for movements in a few meters range.
Secondly, the iPhone sensor is not design to get an industrial-scale precision and accuracy in an outdoor activity, but more for fun activities like sensing shakes or directional changes.
Thus, combined with the above observation implies the fact that our data readed from an iPhone attached to a board would not be as accurate we need (also the integration introduces approximations first to the velocity vector and again when computing position). It also it contains a lot of noise because of the environment (the skateboard goes on the rough and bumpy surfaces).
Given the facts, our team agrees with the tutors that this project would have needed too much time in order to develop some sophisticated algorithms, compensating the noise and the two integrations approximations, hardly near impossible to be done in the time span allocated for this project.
The upper side of this discussion is that our knowledge about sensors and in particular iPhone sensors has improved thanks to our tutors. Our suggestion is that for the next lab a similar discussion and sensor presentation should be held in the first laboratory meeting, in order to guide the students even faster to concrete results.
For the moment we expect to use either one of those strategies to implement our idea
1.Use Wiimote, an iphone, and a skateboard for implementing this game .
- Wiimote : as sensor for capturing the type of movement that is currently implemented.
- iPhone : read the sensed values from Wiimote and implement Game Interface
- Expected Language for implementation : Objective C .
2. Use iPhone , and adruino board that enables wireless communication with the following sensors:
- Bending sensor.
- Expected Language for implementation : Objective C , and C++