PDA

View Full Version : ASE model troubles


duhast
16th October 2003, 14:07
I am trying to learn how to properly use .ase models and I have made a test just to see how to get these to work but I am having problems with it.

The textures show up fine on the model in GtK but once I compile the level I put the model in it is untextured and has the grey and white grid.

I have tried converting the compiled bsp of the model as well as the .map of the model and I get the same result no matter what. At this point I am totally confused as to what I should be doing. :banghead: Any help would be appreciated. :banana:

What am I doing wrong? Here is the model file:


*3DSMAX_ASCIIEXPORT 200
*COMMENT "Generated by Q3Map2 (ydnar) -exportase"
*SCENE {
*SCENE_FILENAME "beercase.bsp"
*SCENE_FIRSTFRAME 0
*SCENE_LASTFRAME 100
*SCENE_FRAMESPEED 30
*SCENE_TICKSPERFRAME 160
*SCENE_BACKGROUND_STATIC 0.0000 0.0000 0.0000
*SCENE_AMBIENT_STATIC 0.0000 0.0000 0.0000
}
*MATERIAL_LIST {
*MATERIAL_COUNT 4
*MATERIAL 0 {
*MATERIAL_NAME "models/mapobjects/tools/_caulk"
*MATERIAL_CLASS "Standard"
*MATERIAL_DIFFUSE 1.000000 1.000000 1.000000
*MATERIAL_SHADING Phong
*MAP_DIFFUSE {
*MAP_NAME "textures/tools/_caulk"
*MAP_CLASS "Bitmap"
*MAP_SUBNO 1
*MAP_AMOUNT 1.0
*MAP_TYPE Screen
*BITMAP "textures/tools/_caulk.tga"
*BITMAP_FILTER Pyramidal
}
}
*MATERIAL 1 {
*MATERIAL_NAME "models/mapobjects/beercase/crate01_front"
*MATERIAL_CLASS "Standard"
*MATERIAL_DIFFUSE 1.000000 0.567058 0.323714
*MATERIAL_SHADING Phong
*MAP_DIFFUSE {
*MAP_NAME "models/mapobjects/beercase/crate01_front"
*MAP_CLASS "Bitmap"
*MAP_SUBNO 1
*MAP_AMOUNT 1.0
*MAP_TYPE Screen
*BITMAP "models/mapobjects/beercase/crate01_front.jpg"
*BITMAP_FILTER Pyramidal
}
}
*MATERIAL 2 {
*MATERIAL_NAME "models/mapobjects/beercase/crate01_side"
*MATERIAL_CLASS "Standard"
*MATERIAL_DIFFUSE 1.000000 0.636740 0.397704
*MATERIAL_SHADING Phong
*MAP_DIFFUSE {
*MAP_NAME "models/mapobjects/beercase/crate01_side"
*MAP_CLASS "Bitmap"
*MAP_SUBNO 1
*MAP_AMOUNT 1.0
*MAP_TYPE Screen
*BITMAP "models/mapobjects/beercase/crate01_side.jpg"
*BITMAP_FILTER Pyramidal
}
}
*MATERIAL 3 {
*MATERIAL_NAME "models/mapobjects/beercase/crate01_top"
*MATERIAL_CLASS "Standard"
*MATERIAL_DIFFUSE 1.000000 0.626342 0.465040
*MATERIAL_SHADING Phong
*MAP_DIFFUSE {
*MAP_NAME "models/mapobjects/beercase/crate01_top"
*MAP_CLASS "Bitmap"
*MAP_SUBNO 1
*MAP_AMOUNT 1.0
*MAP_TYPE Screen
*BITMAP "models/mapobjects/beercase/crate01_top.jpg"
*BITMAP_FILTER Pyramidal
}
}
}
*GEOMOBJECT {
*NODE_NAME "mat3model0surf0"
*NODE_TM {
*NODE_NAME "mat3model0surf0"
*INHERIT_POS 0 0 0
*INHERIT_ROT 0 0 0
*INHERIT_SCL 0 0 0
*TM_ROW0 1.0 0 0
*TM_ROW1 0 1.0 0
*TM_ROW2 0 0 1.0
*TM_ROW3 0 0 0
*TM_POS 0.000000 0.000000 0.000000
}
*MESH {
*TIMEVALUE 0
*MESH_NUMVERTEX 4
*MESH_NUMFACES 2
*COMMENT "SURFACETYPE MST_PLANAR"
*MESH_VERTEX_LIST {
*MESH_VERTEX 0 82.000000 32.000000 25.000000
*MESH_VERTEX 1 34.000000 32.000000 25.000000
*MESH_VERTEX 2 82.000000 64.000000 25.000000
*MESH_VERTEX 3 34.000000 64.000000 25.000000
}
*MESH_NORMALS {
*MESH_FACENORMAL 0 0.000000 0.000000 1.000000
*MESH_FACENORMAL 1 0.000000 0.000000 1.000000
*MESH_VERTEXNORMAL 0 0.000000 0.000000 1.000000
*MESH_VERTEXNORMAL 1 0.000000 0.000000 1.000000
*MESH_VERTEXNORMAL 2 0.000000 0.000000 1.000000
*MESH_VERTEXNORMAL 3 0.000000 0.000000 1.000000
}
*MESH_FACE_LIST {
*MESH_FACE 0 A: 0 B: 2 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
*MESH_FACE 1 A: 2 B: 3 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
}
*MESH_NUMTVERTEX 4
*MESH_TVERTLIST {
*MESH_TVERT 0 -0.005208 0.000000 1.000000
*MESH_TVERT 1 0.994792 0.000000 1.000000
*MESH_TVERT 2 -0.005208 1.000000 1.000000
*MESH_TVERT 3 0.994792 1.000000 1.000000
}
*MESH_NUMTVFACES 2
*MESH_TFACELIST {
*MESH_TFACE 0 0 2 1
*MESH_TFACE 1 2 3 1
}
}
*PROP_MOTIONBLUR 0
*PROP_CASTSHADOW 1
*PROP_RECVSHADOW 1
*MATERIAL_REF 3
}
*GEOMOBJECT {
*NODE_NAME "mat3model0surf1"
*NODE_TM {
*NODE_NAME "mat3model0surf1"
*INHERIT_POS 0 0 0
*INHERIT_ROT 0 0 0
*INHERIT_SCL 0 0 0
*TM_ROW0 1.0 0 0
*TM_ROW1 0 1.0 0
*TM_ROW2 0 0 1.0
*TM_ROW3 0 0 0
*TM_POS 0.000000 0.000000 0.000000
}
*MESH {
*TIMEVALUE 0
*MESH_NUMVERTEX 4
*MESH_NUMFACES 2
*COMMENT "SURFACETYPE MST_PLANAR"
*MESH_VERTEX_LIST {
*MESH_VERTEX 0 34.000000 64.000000 1.000000
*MESH_VERTEX 1 34.000000 32.000000 1.000000
*MESH_VERTEX 2 82.000000 64.000000 1.000000
*MESH_VERTEX 3 82.000000 32.000000 1.000000
}
*MESH_NORMALS {
*MESH_FACENORMAL 0 0.000000 0.000000 1.000000
*MESH_FACENORMAL 1 0.000000 0.000000 1.000000
*MESH_VERTEXNORMAL 0 0.000000 0.000000 -1.000000
*MESH_VERTEXNORMAL 1 0.000000 0.000000 -1.000000
*MESH_VERTEXNORMAL 2 0.000000 0.000000 -1.000000
*MESH_VERTEXNORMAL 3 0.000000 0.000000 -1.000000
}
*MESH_FACE_LIST {
*MESH_FACE 0 A: 0 B: 2 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
*MESH_FACE 1 A: 2 B: 3 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
}
*MESH_NUMTVERTEX 4
*MESH_TVERTLIST {
*MESH_TVERT 0 0.994792 1.000000 1.000000
*MESH_TVERT 1 0.994792 0.000000 1.000000
*MESH_TVERT 2 -0.005208 1.000000 1.000000
*MESH_TVERT 3 -0.005208 0.000000 1.000000
}
*MESH_NUMTVFACES 2
*MESH_TFACELIST {
*MESH_TFACE 0 0 2 1
*MESH_TFACE 1 2 3 1
}
}
*PROP_MOTIONBLUR 0
*PROP_CASTSHADOW 1
*PROP_RECVSHADOW 1
*MATERIAL_REF 3
}
*GEOMOBJECT {
*NODE_NAME "mat2model0surf2"
*NODE_TM {
*NODE_NAME "mat2model0surf2"
*INHERIT_POS 0 0 0
*INHERIT_ROT 0 0 0
*INHERIT_SCL 0 0 0
*TM_ROW0 1.0 0 0
*TM_ROW1 0 1.0 0
*TM_ROW2 0 0 1.0
*TM_ROW3 0 0 0
*TM_POS 0.000000 0.000000 0.000000
}
*MESH {
*TIMEVALUE 0
*MESH_NUMVERTEX 4
*MESH_NUMFACES 2
*COMMENT "SURFACETYPE MST_PLANAR"
*MESH_VERTEX_LIST {
*MESH_VERTEX 0 82.000000 64.000000 25.000000
*MESH_VERTEX 1 34.000000 64.000000 1.000000
*MESH_VERTEX 2 82.000000 64.000000 1.000000
*MESH_VERTEX 3 34.000000 64.000000 25.000000
}
*MESH_NORMALS {
*MESH_FACENORMAL 0 0.000000 0.000000 1.000000
*MESH_FACENORMAL 1 0.000000 0.000000 1.000000
*MESH_VERTEXNORMAL 0 0.000000 1.000000 0.000000
*MESH_VERTEXNORMAL 1 0.000000 1.000000 0.000000
*MESH_VERTEXNORMAL 2 0.000000 1.000000 0.000000
*MESH_VERTEXNORMAL 3 0.000000 1.000000 0.000000
}
*MESH_FACE_LIST {
*MESH_FACE 0 A: 0 B: 2 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
*MESH_FACE 1 A: 3 B: 0 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
}
*MESH_NUMTVERTEX 4
*MESH_TVERTLIST {
*MESH_TVERT 0 -0.005208 1.002604 1.000000
*MESH_TVERT 1 0.994792 0.002604 1.000000
*MESH_TVERT 2 -0.005208 0.002604 1.000000
*MESH_TVERT 3 0.994792 1.002604 1.000000
}
*MESH_NUMTVFACES 2
*MESH_TFACELIST {
*MESH_TFACE 0 0 2 1
*MESH_TFACE 1 3 0 1
}
}
*PROP_MOTIONBLUR 0
*PROP_CASTSHADOW 1
*PROP_RECVSHADOW 1
*MATERIAL_REF 2
}
*GEOMOBJECT {
*NODE_NAME "mat2model0surf3"
*NODE_TM {
*NODE_NAME "mat2model0surf3"
*INHERIT_POS 0 0 0
*INHERIT_ROT 0 0 0
*INHERIT_SCL 0 0 0
*TM_ROW0 1.0 0 0
*TM_ROW1 0 1.0 0
*TM_ROW2 0 0 1.0
*TM_ROW3 0 0 0
*TM_POS 0.000000 0.000000 0.000000
}
*MESH {
*TIMEVALUE 0
*MESH_NUMVERTEX 4
*MESH_NUMFACES 2
*COMMENT "SURFACETYPE MST_PLANAR"
*MESH_VERTEX_LIST {
*MESH_VERTEX 0 82.000000 32.000000 1.000000
*MESH_VERTEX 1 34.000000 32.000000 1.000000
*MESH_VERTEX 2 82.000000 32.000000 25.000000
*MESH_VERTEX 3 34.000000 32.000000 25.000000
}
*MESH_NORMALS {
*MESH_FACENORMAL 0 0.000000 0.000000 1.000000
*MESH_FACENORMAL 1 0.000000 0.000000 1.000000
*MESH_VERTEXNORMAL 0 0.000000 -1.000000 0.000000
*MESH_VERTEXNORMAL 1 0.000000 -1.000000 0.000000
*MESH_VERTEXNORMAL 2 0.000000 -1.000000 0.000000
*MESH_VERTEXNORMAL 3 0.000000 -1.000000 0.000000
}
*MESH_FACE_LIST {
*MESH_FACE 0 A: 0 B: 2 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
*MESH_FACE 1 A: 2 B: 3 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
}
*MESH_NUMTVERTEX 4
*MESH_TVERTLIST {
*MESH_TVERT 0 0.985677 0.002604 1.000000
*MESH_TVERT 1 -0.014323 0.002604 1.000000
*MESH_TVERT 2 0.985677 1.002604 1.000000
*MESH_TVERT 3 -0.014323 1.002604 1.000000
}
*MESH_NUMTVFACES 2
*MESH_TFACELIST {
*MESH_TFACE 0 0 2 1
*MESH_TFACE 1 2 3 1
}
}
*PROP_MOTIONBLUR 0
*PROP_CASTSHADOW 1
*PROP_RECVSHADOW 1
*MATERIAL_REF 2
}
*GEOMOBJECT {
*NODE_NAME "mat1model0surf4"
*NODE_TM {
*NODE_NAME "mat1model0surf4"
*INHERIT_POS 0 0 0
*INHERIT_ROT 0 0 0
*INHERIT_SCL 0 0 0
*TM_ROW0 1.0 0 0
*TM_ROW1 0 1.0 0
*TM_ROW2 0 0 1.0
*TM_ROW3 0 0 0
*TM_POS 0.000000 0.000000 0.000000
}
*MESH {
*TIMEVALUE 0
*MESH_NUMVERTEX 4
*MESH_NUMFACES 2
*COMMENT "SURFACETYPE MST_PLANAR"
*MESH_VERTEX_LIST {
*MESH_VERTEX 0 82.000000 64.000000 1.000000
*MESH_VERTEX 1 82.000000 32.000000 1.000000
*MESH_VERTEX 2 82.000000 64.000000 25.000000
*MESH_VERTEX 3 82.000000 32.000000 25.000000
}
*MESH_NORMALS {
*MESH_FACENORMAL 0 0.000000 0.000000 1.000000
*MESH_FACENORMAL 1 0.000000 0.000000 1.000000
*MESH_VERTEXNORMAL 0 1.000000 0.000000 0.000000
*MESH_VERTEXNORMAL 1 1.000000 0.000000 0.000000
*MESH_VERTEXNORMAL 2 1.000000 0.000000 0.000000
*MESH_VERTEXNORMAL 3 1.000000 0.000000 0.000000
}
*MESH_FACE_LIST {
*MESH_FACE 0 A: 0 B: 2 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
*MESH_FACE 1 A: 2 B: 3 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
}
*MESH_NUMTVERTEX 4
*MESH_TVERTLIST {
*MESH_TVERT 0 1.000000 0.002604 1.000000
*MESH_TVERT 1 0.000000 0.002604 1.000000
*MESH_TVERT 2 1.000000 1.002604 1.000000
*MESH_TVERT 3 0.000000 1.002604 1.000000
}
*MESH_NUMTVFACES 2
*MESH_TFACELIST {
*MESH_TFACE 0 0 2 1
*MESH_TFACE 1 2 3 1
}
}
*PROP_MOTIONBLUR 0
*PROP_CASTSHADOW 1
*PROP_RECVSHADOW 1
*MATERIAL_REF 1
}
*GEOMOBJECT {
*NODE_NAME "mat1model0surf5"
*NODE_TM {
*NODE_NAME "mat1model0surf5"
*INHERIT_POS 0 0 0
*INHERIT_ROT 0 0 0
*INHERIT_SCL 0 0 0
*TM_ROW0 1.0 0 0
*TM_ROW1 0 1.0 0
*TM_ROW2 0 0 1.0
*TM_ROW3 0 0 0
*TM_POS 0.000000 0.000000 0.000000
}
*MESH {
*TIMEVALUE 0
*MESH_NUMVERTEX 4
*MESH_NUMFACES 2
*COMMENT "SURFACETYPE MST_PLANAR"
*MESH_VERTEX_LIST {
*MESH_VERTEX 0 34.000000 32.000000 25.000000
*MESH_VERTEX 1 34.000000 32.000000 1.000000
*MESH_VERTEX 2 34.000000 64.000000 25.000000
*MESH_VERTEX 3 34.000000 64.000000 1.000000
}
*MESH_NORMALS {
*MESH_FACENORMAL 0 0.000000 0.000000 1.000000
*MESH_FACENORMAL 1 0.000000 0.000000 1.000000
*MESH_VERTEXNORMAL 0 -1.000000 0.000000 0.000000
*MESH_VERTEXNORMAL 1 -1.000000 0.000000 0.000000
*MESH_VERTEXNORMAL 2 -1.000000 0.000000 0.000000
*MESH_VERTEXNORMAL 3 -1.000000 0.000000 0.000000
}
*MESH_FACE_LIST {
*MESH_FACE 0 A: 0 B: 2 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
*MESH_FACE 1 A: 2 B: 3 C: 1 AB: 1 BC: 1 CA: 1 *MESH_SMOOTHING 0 *MESH_MTLID 0
}
*MESH_NUMTVERTEX 4
*MESH_TVERTLIST {
*MESH_TVERT 0 1.000000 1.002604 1.000000
*MESH_TVERT 1 1.000000 0.002604 1.000000
*MESH_TVERT 2 0.000000 1.002604 1.000000
*MESH_TVERT 3 0.000000 0.002604 1.000000
}
*MESH_NUMTVFACES 2
*MESH_TFACELIST {
*MESH_TFACE 0 0 2 1
*MESH_TFACE 1 2 3 1
}
}
*PROP_MOTIONBLUR 0
*PROP_CASTSHADOW 1
*PROP_RECVSHADOW 1
*MATERIAL_REF 1
}

kat
16th October 2003, 15:29
where it says '*BITMAP' and you've got the file path using '/' they need to be '\'. The others are Ok. Try that and see if it works..

Also just noticed you've used the .jpg file extension... change that to .tga, same rule applies to the file extensions as it does for reference textures in shaders.

duhast
16th October 2003, 15:45
Ok thank you Kat. I will give this a go and see what happens. :)

duhast
16th October 2003, 16:03
OK I made the changes you suggested but it still doesn't work. All I get is the "grid". I even tried adding the .tga extension in the material name as well just to make sure. Neither image format works for me. :???:

Hewster
16th October 2003, 16:04
err.. I don't think it matters about the bitmap path.. I think this is
only used by max.. the important path is the material name.

I wonder if the problem is that your textures are in the model directory,
I always create my texture paths as follows:
textures/map_name/models/map_objects/
textures/map_name/models/dynamic/
textures/map_name/stone/
textures/map_name/ground/
ect.

Also.. have you made actual shaders for your textures?
I suggest that you do, and remeber to include then in your shaderlist.txt

Hewster

kat
16th October 2003, 17:49
.......
*MATERIAL_LIST {
*MATERIAL_COUNT 4
*MATERIAL 0 {
*MATERIAL_NAME "models/mapobjects/tools/_caulk"
*MATERIAL_CLASS "Standard"
*MATERIAL_DIFFUSE 1.000000 1.000000 1.000000
*MATERIAL_SHADING Phong
*MAP_DIFFUSE {
*MAP_NAME "textures/tools/_caulk"
*MAP_CLASS "Bitmap"
*MAP_SUBNO 1
*MAP_AMOUNT 1.0
*MAP_TYPE Screen
*BITMAP "textures/tools/_caulk.tga"
*BITMAP_FILTER Pyramidal
}
........

change the MATERIAL_NAME here to read the same path as the MAP_NAME. If you make an error with file paths on one of the materials it has a tendancy to bork the whole lot up. Both should be reading the same file path.

duhast
16th October 2003, 19:44
Well, it is beginning to look like I am not meant to get this to work lol. I have corrected the path name to the _caulk texture like Kat told me and I have also created a shader (although I wasn't wanting to have to do that just yet) and still I get the grid. I am trying to do this in SOF2 but that shouldn't matter should it? I have heard other mappers say they have used .ase models in their maps for SOF2.

Oh and I had tried previously to have the textures in the textures directory (textures/beercase/nameoftexture) but that didn't help either.

I really appreciate everyone's help so far, I really really want to get this working because I think my maps would hopefully go to the next level if I could get this method down.

kat
17th October 2003, 17:21
I actually opened the ASE file in a modelling pack here and the mesh appears to be ok... does the model appear OK in the editor??

What about folder names, everything links up oK yes?

If you're on NT or XP try loading LEET which can export to ASE files from brush based work. Just open the prefab in leet and right click on any viewport selecting 'export > ase' from the popup menu.

http://www.bpeers.com/software/leet/

duhast
17th October 2003, 18:34
Yes it looks fine in the editor, textures and everything are correct. Once I compile and run a level with the model in it that is where it borks and all I get is the grid. Thank you for the link to LEET. I will give that a go and see what happens. ;) I'll post the results as soon as I can check it out. :)

Hewster
17th October 2003, 18:48
Hi..

There has got to be a simple answer to this problem...
perhaps you could create a pk3 with your test map,models, bsp &
textures in it, upload it somewhere so we can have a look at what you're
doing?
I'm sure between us we can sort this out for you :)

@kat... that leet editor looks promising :) I've always imagined a
real-time coop map editor would be rather awesome !

Hewster

kat
17th October 2003, 19:46
Hewster : atm it's basically a 'co-op' texturer, there were some aspirations to make it a sort of editor but I don't know if Berts still interested in that aspect of LEETs development (might be a lot of dev work for one guy already heavily pre-occupied with game coding..!)

As it stands you can make ASE files from it so quickly it's amazing, the main thing is that so far you don't have to keep editing the material paths..!! Just last night I converted a big brush mesh to ASE without any problems...

It only works on NT or XP atm, there is a stand-alone for 98 but there didn't seem to be much interest in that.

duhast
17th October 2003, 21:02
Sure! I will knock one together this evening (it's 4:00pm here) and provide a link to it. The model I am using is just a simple box really that I was using to test with so I could learn how to make an ase model and use it. I've learned to start simple and go from there lol.

duhast
18th October 2003, 19:40
Sorry took so long to get this up. Things came up in real life that prohibited me from getting this posted sooner.

http://www.fragdom.com/devstuff/modeltest.pk3

Hewster
20th October 2003, 14:29
Hi,

Well I looked at your pk3, you didn't include your .map file, so I couldn't
check what you had done in there.. however, I rewrote the texture
paths, as I advised above, in your shader & model, then created a new
.map file to test.

I don't have SOF2, so I had build this map for RtCW, although you should
be able to load the .map file.
I compiled for RtCW and it tested ok, I have also compiled for SOF2, but have not been able to test.

I have included the SOF2 .bsp compile in the pk3 below:
http://www.deevickery.btinternet.co.uk/ww/forum_stuff/q3map2/files/beercase.pk3

Remember to save as type "All Files", or IE will rename the pk3 to .zip.

I've included all the textures I used in the map & the sky shader, so
you should be able to put the pk3 into your base dir and test.

Let us know if it works :)

Hewster

duhast
20th October 2003, 15:26
Thank you Hewster. I tested and it still gives me the grid. This must just be a problem in relation to SOF2 somehow. :banghead: I haven't checked this in RTCW yet but I will.
I could have sworn that I have read of other mappers getting .ase models to work for SOF2 but knowing my memory this could just be the case for a mod and not the actual game itself. :???: Ahhhh frustration...it makes for sweeter satisfaction I suppose once a problem is finally overcome. ;)