Hello everybody!
I am new to this forum, but I have worked with Panda3D for some weeks and, being more used to C++ engines, have found Panda3D + Python awesome. With IrrLicht I had some unexpected bugs (reflection maps not working, hard-to-implement shaders, etc), and Ogre3D was far too low-level (try to display just a line of text ). Soā¦
I worked for months and months in my racing game, in particular with the track system and the car gameplay, in a way all the content would be loaded from config files (actually ā.iniā files) and would be, for the track system, generated on-the-fly according to coordinates, length, width, torsion, and other parameters you gave to the track āsectionsā, and so āsub-sectionsā for the graphical and physical parts.
I have some interesting stuff to show today, because I think this game would be a pretty way to encourage Panda3D, which is an engine I fell in love with. The game I have in project is called for now ā1ā, and is a 3D car racer where you complete challenges to gain more cars, more options, and so more⦠challenges. This game will feature 20 cars inspired from real-world (I would thank my mate for all that stuff she is making), and a large number of tracks, created in a simple way (I canāt promise you a track editor for the momentā¦), with the ability to change the appearence of the roads, wall, sceneries, and more (this is already possible!). I hope this project will come, but as I have two years of studies, I might be āmore or lessā present for this game.
Here is a Python example to create the track you will see on the video below. The arguments are auto-filled if equaling None, and you have respectively the absolute position, the relative length, the relative elevation, the absolute orientation, the relative angle from the orientation, the torsion, and last but not least the width at the section begins and ends.
self.track = Track()
self.track.addSection(None,100.0,None,None, 0.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None, 0.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None,-90.0,V2(20.0,20.0))
self.track.addSection(None,100.0, 8.0,None,-90.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None, 0.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None, 90.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None, 0.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None,-90.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None,-90.0,V2(20.0,20.0))
self.track.addSection(None,100.0,-4.0,None, 90.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None,-90.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None, 0.0,V2(20.0,20.0))
self.track.addSection(None,100.0,-4.0,None,-90.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None, 0.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None, 0.0,V2(20.0,20.0))
self.track.addSection(None,100.0,None,None, 0.0,V2(20.0,20.0))
Here is a video from Youtube:
http://youtu.be/6p0rLfG7Eec
Hope I didnāt waste your time, and please forgive my English, as my native language is French.
Also you can share your review, what you like, dislike, etc.
Thanks!
PS : the soundtrack you hear in the video is from me, under license CC BY-NC-ND 3.0