Editing Blender To Zero-K
Jump to navigation
Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 8: | Line 8: | ||
== Make or Edit the model in Blender == | == Make or Edit the model in Blender == | ||
=== Setting up Blender for use in Zero-K === | === Setting up Blender for use in Zero-K === | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Importing a model (optional) === | === Importing a model (optional) === | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Importing textures === | === Importing textures === | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Modelling for Zero-K === | === Modelling for Zero-K === | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Texturing for Zero-K, and Spring texture oddities === | === Texturing for Zero-K, and Spring texture oddities === | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Export the model to .dae format == | == Export the model to .dae format == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== A note on animation === | === A note on animation === | ||
− | |||
− | |||
− | |||
== Set up texture associations and .dae.lua metadata == | == Set up texture associations and .dae.lua metadata == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Set up Zero-K mod that contains and uses your files == | == Set up Zero-K mod that contains and uses your files == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | == Run Zero-K and point at your mod == | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Fix whatever isn't right == | == Fix whatever isn't right == | ||
− | |||
== The other bits == | == The other bits == | ||
Line 155: | Line 47: | ||
Next, go to the world tab [[File:Blender_world_tab.png]] and activate Ambient Occlusion. Factor should be 1.0, and the distance parameter depends on how large your model is. You may have to tweak this value until the resulting bake looks correct, but start with a distance parameter somewhere around 25% to 50% of the width of your model, turning it up if this is not sufficient. | Next, go to the world tab [[File:Blender_world_tab.png]] and activate Ambient Occlusion. Factor should be 1.0, and the distance parameter depends on how large your model is. You may have to tweak this value until the resulting bake looks correct, but start with a distance parameter somewhere around 25% to 50% of the width of your model, turning it up if this is not sufficient. | ||
− | To properly bake, we need somewhere to put the texture - so open up a shader node window somewhere, select the ground plane and make sure that it is using a new material and that material is using nodes. Connect a texture node using the Ctrl-T shortcut. Press New to make a new texture, and set it to the appropriate size - typically 512px square for something the size of a factory or 128px square for smaller buildings. Set the image | + | To properly bake, we need somewhere to put the texture - so open up a shader node window somewhere, select the ground plane and make sure that it is using a new material and that material is using nodes. Connect a texture node using the Ctrl-T shortcut. Press New to make a new texture, and set it to the appropriate size - typically 512px square for something the size of a factory or 128px square for smaller buildings. Set the image colorspace to non-color data to prevent shading artefacts later. Make sure this texture node has been clicked on and is selected, because it's the last selected texture for each relevant object that receives the bake. |
Finally we're almost ready to do the baking! Return to the render tab [[File:Blender_render_tab.png]] and scroll down to the Bake section. From the Bake Type dropdown select Ambient Occlusion. Make sure that Selected to Active is OFF, as that is intended to transfer high poly modelling data to low poly objects and we actually do want just a general scene-wide bake of ambient occlusion, it's just we only care about the result on this one ground plane object. Margin can be adjusted but the default of 16px is probably fine. | Finally we're almost ready to do the baking! Return to the render tab [[File:Blender_render_tab.png]] and scroll down to the Bake section. From the Bake Type dropdown select Ambient Occlusion. Make sure that Selected to Active is OFF, as that is intended to transfer high poly modelling data to low poly objects and we actually do want just a general scene-wide bake of ambient occlusion, it's just we only care about the result on this one ground plane object. Margin can be adjusted but the default of 16px is probably fine. | ||
Line 178: | Line 70: | ||
<pre> | <pre> | ||
− | buildingGroundDecalDecaySpeed = 30, --Seconds decal | + | buildingGroundDecalDecaySpeed = 30, --Seconds decal fades in or out of existence? |
− | buildingGroundDecalSizeX = 12, --Size of | + | buildingGroundDecalSizeX = 12, --Size of decal X axis in footprint units |
− | buildingGroundDecalSizeY = 12, --Size of | + | buildingGroundDecalSizeY = 12, --Size of decal Y axis in footprint units |
buildingGroundDecalType = [[unitname_aoplane.dds]], --filename of decal | buildingGroundDecalType = [[unitname_aoplane.dds]], --filename of decal | ||
Line 192: | Line 84: | ||
=== unitpic === | === unitpic === | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |