Game Development Community

More Lightwave MIS Exporting

by Cinder Games · 04/16/2006 (9:42 pm) · 5 comments

Well as some may know, I'm having issues with my scriptting for exporting object rotations from lightwave. But it only happens when i rotate on all 3 axis... so i'll figure that out another day.

Up now is just a tiny room i exported out from lightwave. It's basically pieced together and i run my "exporter" and it creates all the MIS data needed NOW including datablocks.

img98.imageshack.us/img98/6974/lw3wr.jpg
It's several pieces, 2 different walls, two types of "corners", a door, and 2 types of "floor"
It's basically every shape i need to create some generic "dungeons" or what have you.




I'll make some more props for next time to make it look more impressive.

and here's that same "scene" in torque.

img80.imageshack.us/img80/9421/screenshot009000014pc.jpgimg118.imageshack.us/img118/7596/screenshot009000024ip.jpg

no, there's no ceiling. Don't need one for the view i'm doing. As you can see it perfectly lines up everything with position and rotation(on 2 axis).

So how's it work?
Each piece was previously exported to DTS complete with convex collision meshes, I arrange a "scene" in lightwave how i want the pieces to look, i run my exporter script. and then simply load torque and i'm ready to rock.

Here's an example codeblock it outputs.

....
datablock StaticShapeData(wallR){
    category = "Temp";
    shapeFile = "~/data/shapes/Wshrine/wallR.dts";
    position = "0 0 0";
    Scale="1 1 1"; 
    emap = false;
    receiveSunLight = "1"; 
};
new StaticShape() {
     Xrotation = "Pitch: 0 Bank: 0 Heading: 180";
     rotation = "0 0 1 180";
     position = "16 14 0";
     Scale = "1 1 1";
     dataBlock = "wallR";
};
new StaticShape() {
     Xrotation = "Pitch: 0 Bank: 0 Heading: 180";
     rotation = "0 0 1 180";
     position = "12 14 0";
     Scale = "1 1 1";
     dataBlock = "wallR";
};
new StaticShape() {
     Xrotation = "Pitch: 0 Bank: 0 Heading: 180";
     rotation = "0 0 1 180";
     position = "4 14 0";
     Scale = "1 1 1";
     dataBlock = "wallR";
};
.....

WHO NEEDS DIF? I don't :P

#1
04/16/2006 (9:49 pm)
That looks awesome. I think the guys who made oblivion did something similar where they pieced the world together like lego blocks.
#2
04/16/2006 (10:17 pm)
Very nice Ramen!
#3
04/16/2006 (10:24 pm)
Sounds like a great way to make levels that don't need super precise collision. Have you tried asking around for help with the rotation problem, I'm sure someone could help you with it...

Anyways, next step is to integrate this with the lighting kit and then you'll be able to do full level design in Lightwave ;D.
#4
04/16/2006 (10:28 pm)
Yeah, this already works with lights i want to export. If i get around to getting TLK, it'll be ready to spit out lights as well.
#5
04/17/2006 (12:09 am)
good job, Ramen !