Matthieu LABAN
.NET, My Life, Flight Simulation and Real Flight...

 
About Me :
25 Years old developer and aviation
enthusiast living in Santa Clara, California.
View Matthieu Laban's profile on LinkedIn 
Contact me at :
mlaban at gmail dot com


Photo & Video Galleries:
- Gallery List
- Flight Videos
Resume :
e-mail me to get my latest résumé
Animations (Part Deux) 

[This entry has been imported from my old blog, therefore, links and images might now show correctly. Sorry about that]

At last, i got these damn animations to work !
Turns out it was indeed due to some transformations on the objects hierarchy. So now, the animation support is almost complete :-P
As a test for this feature, I decided to implement some kind of semi-hard-coded retracting gears for the Cessna 210. It was not as easy as I thought it would be. The fact that the wheels are handled by ode and not children of the airplane brought a little difficulty to the process, but it works now.

  
Retracting Gears

I also took this opportunity to refactor the code of the moving surfaces (ailerons, flaps, etc...). They were kinda hard coded with some kind of an axis about which the ailerons were supposed to rotate … this was crappy. So now, I’m playing animations to move these parts. Well, not exactly playing, more setting the animation at a specific position in time. That way, the animations are now created within 3DS Max and this technique works for every aircraft.


Cessna 210

I also added some dynamic elements to the scenery and started with a hangar that has animated doors. A script opens them when an aircraft gets within 10 meters of the door and closes them when it gets away. This is really fun to watch :)
Pics:

  
Hangar doors open ...


Cessna 210 parked inside


So what’s next ?

Happy Landings, Matt

Cessna Centurion and Animations 

[This entry has been imported from my old blog, therefore, links and images might now show correctly. Sorry about that]

After the ChaosLogic rush of last week, I finally had the time to continue to work on the simulator. There are two things that I’d like to talk about in this post. The modeling of the Cessna 210 Centurion and my big failure in implementing hierarchical animations in the sim…

The Animations
I thought that would be an easy part to complete since I had looked over the output from the IGameExporter before, and it appeared quite easy to read and implement… I could have not been more wrong…
I forgot the fact that every time there are transformations involved in something that comes from 3DS Max, I’ve got to pull some hairs to do what I want … The exporter provides a series of quaternions for the rotations, and translation/scale vectors. So, to test this, I created a simple scene within 3DSMax, added a bunch of animations to linked objects and exported it. Believe it or not, that it was actually working! I had my teapots moving around… It's only a semi-failure then :-P
I then decided to move on the the real stuff, the retracting gear animation of the Cessna 210 … And that’s where things got out of hand.
The animations were all messed up and rotating about the oddest angles … After some investigations, I finally came to the conclusion that this might be due to the parent/child relationships and the successive transformations that I applied during the modeling … I tried resetting xforms, resetting pivots and clicking on whatever buttons I could find, but nothing worked …
I can’t really recount here all the funny animations I’ve experienced along the way; this would take too much time. I’m sure however that all those who have worked on a 3D project have faced that kind of problem...
In the end, I decided I would give this animation thing a break and come back to it later … it’s not like it’s the only thing left to do in this project!

The Cessna 210 Centurion
It’s nearly completed, the texturing is done and I’ve corrected the remaining things that were going wrong with it. The interior is now modeled including the control panel.
I’m just back from a photo shoot flight ;-), check out the pics below.

 
 
 

Happy Landings !

Cessna 210 Centurion 

[This entry has been imported from my old blog, therefore, links and images might now show correctly. Sorry about that]

Well Well, after a pause in the flight simulation area, it was more than time to get back to work! So what’s new since last time?
A few things, the arrival of a new aircraft in my library, a brand new Cessna 210 Centurion (I love this bird), followed by a code refactor of the aircraft section and one last improvement in the model loader to correctly support 3DSMax smoothing groups. (it was becoming more than necessary !). It's also possible now to change the aircraft model at runtime !

The Cessna 210 Centurion:
I was getting fed up with the good old Piper PA28, I wanted to add a new aircraft to my fleet. I decided to roll up my sleeves once again and started to work from scratch on the 3D Model, and I’m amazed to say it turned out pretty well :)


Cessna Centurion in 3DS Max

I had to change a couple of things in the code to make this new aircraft work, since some portions of the code were apparently a tad too hard coded :-P. Each aircraft now has its own flight data xml file with like engine mass, aircraft mass and so forth…

The First Flight :
The flight model tweaking done, serious stuff could start! Flying ! But prior to that, i had to correct one last thing ... I found out that the normals that were calculated for the aircraft objects were completely messed up somehow … I found a way to correct the problem and added support for smoothing groups while I was at it :). Pictures are better than words, let’s move on to the visual stuff of the First Flight !


Fashion Picture ! She's pretty :)


Flare ...


At Parking ...


Close up


One last, steep turn
At Parking

Next step, design the interior and texture this new bird ! (More info on the Cessna 210 Centurion can be found at Airliners.net here)
Happy Landings