Overgrowth 3D Reference Guide (Alpha)

User avatar
Markuss
Posts: 193
Joined: Sun Apr 04, 2010 1:52 pm

Overgrowth 3D Reference Guide (Alpha)

Post by Markuss » Tue Mar 22, 2011 2:04 pm

EXAMPLE FILES HERE: EXAMPLES.ZIP

Basics

In Overgrowth 3D models use the .OBJ format but the material counter-part (.MTL) is not used, instead an “object properties file” stores links to model and texture files as well as some other information. This is the file you choose when loading an object, it uses the .XML format and can be read/created in any text editor:

Image
object properties file

Tags:
<Model> - links to the model file (.OBJ)
<ColorMap> - links to the color texture file (.TGA .TIF)
<NormalMap> - links to the normal map texture file (.TGA .TIF)
<ShaderName> - refers to internal shader file (.FRAG .VERT), defines how object is rendered.
<MaterialPath> - links to internal material file (.XML), defines sound made by hitting the object.
Additional tags:
<flags no_collision> - turns physics calculations on/off, true = off.
“<ShaderName>” used to be “<ShaderPath>” and contained the full link instead of just the file name, expect similar update for “<MaterialPath>”.
Look at the example plant object for usage of the <flags no_collision> tag.
Model and Texture Requirements
Models need to be constructed from squares and triangles only, textures need to be square and not just “powers of 2”. (512x512 or 1024x1024 not 512x1024 or 1024x2048)

Image
Simple object and texture UV layout



____________________________________________________________________________________

Collision/Physics Objects

The engine automatically generates a simplified physics object from your model but this can be overridden by providing an alternative .OBJ file. The file is placed in the same folder and shares the same name as the original .OBJ file with a suffix:

Suffixes:
YourObject_COL.obj - contains simplified geometry for physics calculations
YourObjectHULL.obj - same as _COL but has extra info, used with weapons
inconsistent, HULL doesn’t have an underscore to separate it from the file name!
Collision objects (_COL)
Simplified geometry such as boxes an cylinders which are used for collision detection, they are aligned to your object based on “relative position” in your 3D program so you should place the physics mesh on top of your render mesh upon export:

Image
Physics mesh should be placed on top of the render mesh

Hull objects (HULL)
They are very similar to physics objects but are used for items and weapons, the only difference is that they contain a free-floating triangle which defines the object’s center of gravity.

Image
Hull objects are placed over render mesh like physics objects.



____________________________________________________________________________________

Items and Weapons

Items and Weapons are aligned to the character based on their position relative to the center of the scene in your 3D app, you should load the .obj files of the example objects for reference. To make an object “pick-up-able” you need another .XML file that you load in place of the regular object properties file, it stores the info needed that is not defined in the regular object properties file:

Image
Item properties file

Tags:
<type> - defines what type of item the object is.
<appearance obj_path> - links to the regular object definition file.
<grip ik_attach anim> - defines what bone the object is attached to, links to an animation file.
<physics mass> - changes the pitch(?) of the sound made by the object hitting things
<anim_override idle> - overrides the idle animation of a character holding the item.
Not sure what the animation file in <grip ik_attach anim> does.
<anim_override idle> is only used for 2-handed weapons at the moment.
Image
Example weapons, handles show the location of characters hands
There is a bug that makes weapons turn invisible when loading levels with them already in it, you can fix this by having the “regular-object" version somewhere in the level as well.

____________________________________________________________________________________

Shaders

Cubemap – closest thing to a “standard shader”, it has a cube-map based on the sky texture and a specular shine, the visibility of the cube map and shine is controlled with color texture’s alpha channel, white = fully reflective and shiny. Similarly, the normal-map texture’s alpha channel controls where color tinting happens, white = full effect.
The cube map’s visibility is inversely affected by the brightness of the texture, you should make the color texture close to black for materials that are reflective such as chrome and glass.
CubemapObj - same as Cubemap but uses object-space normal maps instead of tangent space.

CubemapItem – same as Cubemap but the shine is sharper.

CubemapObjItem – object-space version of CubemapItem.

CubemapAlpha – has transparency controlled by the color texture’s alpha channel, cube map and shine are controlled by the normal-map texture’s alpha channel instead.
CubemapAlpha has depth sorting issues with other transparent objects, enabling anti-aliasing fixes this somewhat
CubemapObjChar – used for characters, shine is sharp, uses object space normals.
There is no tangent-space version of CubemapObjChar and no object-space version of CubemapAlpha at the moment.
Plant – has transparency like CubemapAlpha but no cube map/shine. Translucency texture increases the brightness of the object while ignoring diffuse lighting, black = no effect. Wind texture defines intensity of a vertex ripple effect, black = no ripple. Both textures are linked in the object definition file using the <TranslucencyMap> and <WindMap> tags.

Image
CubemapAlpha

Image
Translucency (Plant Shader)



____________________________________________________________________________________

Materials

These are the sounds made and the particles emitted when you hit an object. I’ve set up some tiles for you to walk on to preview each material, here is a list:

Cloth_Fabric
Cloth_Leather
Default
Dirt
DirtyRock
Drygrass
Grass
Gravel
Rock
Rocks
Sand
Snow
Wood

Image
“Sound tiles”
Some of these don’t emit particles.
Last edited by Markuss on Fri Nov 27, 2015 1:47 am, edited 62 times in total.

LugaruFan
Posts: 421
Joined: Tue Dec 28, 2010 1:53 pm
Location: Desert Outpost

Re: Overgorwth Alpha 3D Reference Guide (under construction)

Post by LugaruFan » Tue Mar 22, 2011 2:28 pm

Nice!
Last edited by LugaruFan on Tue Jun 14, 2011 10:41 am, edited 1 time in total.

User avatar
Count Roland
Posts: 2937
Joined: Tue Sep 25, 2007 11:15 pm
Location: Galapagos Islands, rodeoin some turtles.
Contact:

Re: Overgorwth Alpha 3D Reference Guide (under construction)

Post by Count Roland » Tue Mar 22, 2011 2:32 pm

that's a good guide so far, oughta be stickied.

User avatar
adwuga
Posts: 2176
Joined: Tue Aug 18, 2009 12:09 pm
Location: America... Fuck yeah.

Re: Overgorwth Alpha 3D Reference Guide (under construction)

Post by adwuga » Tue Mar 22, 2011 3:07 pm

awesome wolfire capsule. if you figure out how to make glowing objects, make it glow and be the ultimate prize.

Precastwig
Posts: 157
Joined: Sat Oct 31, 2009 6:27 pm

Re: Overgorwth Alpha 3D Reference Guide (under construction)

Post by Precastwig » Tue Mar 22, 2011 3:20 pm

Does the capsule remind anyone else of the rebel alliance image from star wars?
Pretty cool.

User avatar
Black_Stormy
Posts: 161
Joined: Sat Mar 12, 2011 2:42 am

Re: Overgorwth Alpha 3D Reference Guide (under construction)

Post by Black_Stormy » Tue Mar 22, 2011 3:57 pm

Wow Markuss, nice guide. Where did you get all that info from? Trial and error?

User avatar
Johannes
Posts: 1374
Joined: Thu Dec 18, 2008 1:26 am
Contact:

Re: Overgrowth 3D Reference Guide (Alpha)

Post by Johannes » Tue Mar 22, 2011 4:18 pm

excellent work, you should put this on the wiki as well:
http://wiki.wolfire.com/index.php/Portal:Overgrowth

User avatar
Markuss
Posts: 193
Joined: Sun Apr 04, 2010 1:52 pm

Re: Overgorwth Alpha 3D Reference Guide (under construction)

Post by Markuss » Tue Mar 22, 2011 4:25 pm

Black_Stormy wrote:Wow Markuss, nice guide. Where did you get all that info from? Trial and error?
IRC mostly.
jo-shadow wrote:excellent work, you should put this on the wiki as well:
http://wiki.wolfire.com/index.php/Portal:Overgrowth
I hate Wikis.

User avatar
Endoperez
Posts: 5668
Joined: Sun Jan 11, 2009 7:41 am
Location: cold and dark and lovely Finland

Re: Overgrowth 3D Reference Guide (Alpha)

Post by Endoperez » Tue Mar 22, 2011 4:54 pm

Fantastic!

User avatar
Johannes
Posts: 1374
Joined: Thu Dec 18, 2008 1:26 am
Contact:

Re: Overgorwth Alpha 3D Reference Guide (under construction)

Post by Johannes » Tue Mar 22, 2011 7:02 pm

Markuss wrote:I hate Wikis.
Fine, I'll put it up there at some point when I have time =P

User avatar
Johannes
Posts: 1374
Joined: Thu Dec 18, 2008 1:26 am
Contact:

Re: Overgrowth 3D Reference Guide (Alpha)

Post by Johannes » Wed Mar 23, 2011 11:42 pm

My vote to include the textures/models for this as editor defaults in the engine, like the placeholder textures in valve's hammer editor:
Image

User avatar
LucarFox
Posts: 40
Joined: Fri Apr 08, 2011 8:19 pm

Re: Overgrowth 3D Reference Guide (Alpha)

Post by LucarFox » Wed May 04, 2011 9:42 am

This is beautifully done.
It will also help a lot of people modding wise.
Thanks for this, I look forward to using it for reference ^^

Willy-Wilson
Posts: 5
Joined: Thu Dec 23, 2010 8:23 pm

Re: Overgrowth 3D Reference Guide (Alpha)

Post by Willy-Wilson » Mon May 16, 2011 5:25 pm

Any way currently to do animated textures with uv offsetting?

User avatar
Johannes
Posts: 1374
Joined: Thu Dec 18, 2008 1:26 am
Contact:

Re: Overgrowth 3D Reference Guide (Alpha)

Post by Johannes » Tue May 17, 2011 12:50 am

Willy-Wilson wrote:Any way currently to do animated textures with uv offsetting?
I think you can actually use high-res tga sequence and theora video, though I'm not sure how well they are implemented right now. David showed them off in alpha 118

User avatar
Black_Stormy
Posts: 161
Joined: Sat Mar 12, 2011 2:42 am

Re: Overgrowth 3D Reference Guide (Alpha)

Post by Black_Stormy » Thu May 19, 2011 6:42 am

As far as I can recall animated textures weren't very well implemented just yet. At least not uv mapped on a model. That's one feature I'm hanging out for.

Ogg or theora (are they the same?) was working in engine in the form of a fire sprite you can spawn with one of the hotkeys, so it's there but I don't know about the rest.

Post Reply