These simple meshes are then processed by the exporter into something that is easy to import in the game and to follow by AIs. It’s nice to have the static model, but after all this is a game so we need to give the player some goodies and baddies! Fortunately there is an easy way to add them : our plugins extend the global “Add” menu of blender with new object types specific to SuperTuxKart, like gift boxes, nitro or bananas.įinally, how does the AI know where to drive, and how do we check that human players do not cheat? We chose to use a set of simple meshes, called drivelines, to indicate where players may drive. Shaders (for example normal maps, splatting, water reflections, lightmaps, sphere mapping) Transparency effect (Alpha Testing, Alpha To Coverage or Alpha Blending) Surface properties, when player is in contact with it:ĭoes it slow down or speed up the player or have a non-standard tire grip? The materials panel automatically lists all textures in the blend file, and allows specifying several properties, for example: Interested? All of our scripts are open-source and available for both private and commercial use under the GNU GPL license. The scripts actually load the description of the contents of the panel from declarative XML files, making it easy to change the contents of the panel. Our panel script can serve as example documentation for anyone who wants to make a custom Blender panel. None of this would have been possible had Blender not been so scriptable. The “B3D” script also exports the mesh to the B3D file format (which also supports skeletal animation, as well as vertex colors and multiple UV maps for lightmaps and normal maps). There is first the track export script, which reads these properties and exports them to XML files for the game core to read (which includes support for moving/animated objects). With a few clicks in the properties panel, you can change the sky, make it snow or rain, add fog, make a water surface animated or specify that particles or sound effects are emitted from a point! ![]() Once this plugin is added to Blender, a few game-specific panels appear in the properties view (one for object properties, one for scene properties, one for material properties). The first plugin, which can be seen in the screenshot, is the “Panel” plugin. The magic behind the scene that makes it possible to take a map in Blender and run it in SuperTuxKart is made up by several Python plugins. SuperTuxKart map and extended panels in Blender We only need to document our specific extensions. This method reduces development time and allowed a tool, that is already known to many artists out there and has tons of documentation available, to create content that is perfectly fit four our game. Our scripts for exporting tracks and karts make these options available in game. We extended the existing modeling tool commonly used for creating tracks: Blender (a tool used for example by the renowned indie game creators Wolfire), so that the necessary options can be set in Blender’s GUI. Instead of restarting such an effort, we chose a slightly different approach. With the three free-time programmers on our team, we couldn’t afford this investment.Ī track editor has been developed by a community member years ago, but it was never even close to being able to design track of sufficient quality and eventually was abandoned. Usualy, the answer to these questions is to create a separate editor which allows 3D modeling and exports the additional data necessary to actually use a level or object (or kart) in the game.Ĭreating and maintaining such a piece of content pipleline requires resources and can slow down or even halt other development, depending on the team size. What graphical effects (particles, animated textures, snow) and what sounds should be used and where?.Position of items boxes (powerups) and bananas (traps).In our racing game SuperTuxKart (STK) for example, map models need further detail: ![]() Many non-graphical pieces of information (metadata) need to be provided. The answer might seem to be trivial: “ Just export the model in a file format that can be read by the graphics engine!” Unfortunately this is not as simple, even when both the modeling software and your graphics engine support the same file format. ![]() One issue that needs to be solved during game development is how to get the art from the modeling tool into the game. Here is a really interesting blog post for SupertuxKart about their track exporter(for those of you who don’t know, STK is a FOSS racing game.)
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |