LW, bones, shockwave... :(

Chrusion

gold plated 3D
Does Shockwave/Director have a limit as to how many models are in a W3D file?

I just split up one object layer that has 11 parts and pasted them in their own layers, bringing the total for the model to 31 layers. These are simple objects with not more than 12 faces/polys each. All are semi-transparently surfaced. The first 20 layers have no transparent surfaces (layer 1 is the base model, the other 19 are arrows showing flow direction). This model is a stormwater filtration system.

When exported to W3D, these new 'water' objects now pop in and out of visibility depending on the angle the model is to the camera (or visa versa), whereas when as a single object, they did not.

I split them up so that each of the 11 'water' objects could be independantly animated in scale, since using bones per the last few msgs above were not working properly.

MAN... if it isn't one thing, it's another. I haven't moved one inch on this project for a month now because of all these set backs and the 20th deadline is fast approaching.
.
 

mdoyle

New member
It doesn't have limit as far as i know. I did a city car racing game and had up to 80 houses in it plus props, fences etc (alhtough the were cloned)

Can you post the file or show a screen grab? Am not too sure waht is disappearing. Do you have a water surface and the arrows are flowing over it? How close to the water are the arrows and how far away is the camera from these objects?

You get bad clipping in (z buffer) in shockwave for models that are very close together. I did a house in shockwave for a masonry client (attached image) and the windows and wood frames of the roof got really bad clipping fomr the objects. In other scenes I did in shockwave (the other one attached) The pipes and posters on the wall got really bad clipping depending on angle and distance. I found that the smaller the world is, the less clipping you get. I ended up modelling the house to to at least 10% of its original size. THe house in lightwave ended up being 1 metre tall. Fixed all my problems. THe only danger of that is having something like a racing game and wanting to have decent physics and collision but u normnallyu don't get a lot of clipping in a racing game.

Bones are a real problem in general. TOok ages to get a decent rig in lightwave (and I got some help from expert riggers) to get the ideal rig for shockwave. I try and avoid bones if possible.

Let me know how u get on
 

Chrusion

gold plated 3D
Let's see if I can attach the W3D here... OK... zipped up. Also attached is the LW9.2 (b3?) model. It should load up fine in 9.0 Modeler. The scene (not included) however, won't due to new object ID system.

So, just spin the w3d model or camera around and see the water objects pop in and out of view.

Thanks so much for helping!
.
 
Last edited:

mdoyle

New member
Just about to have a look but u jsut reminded me of something I got recently with lightwave 9

I ahd problems with characters deforming a torso in lightwave 9. But it exports fine out of lightwave 8.5

Go figure. I tried everything and couldn't fix it
 

mdoyle

New member
Ok

Worked out your problem

I thought it was this once I saw your file. I have had these problems alot but over time with using shockwave I have now got a workaround.

Your problem is the transparency. I will explain why first. Your base model is one big model and has a centre pivot point. In shockwave the camera sees that as one object and draws a bounding box round it type thing. Because shockwave z buffer is crap it doesn't work out very well which object is in front of which when u use transparencies (it happens without transparencies too but not as bad) So because your base model is one model when its near it , it thinks its in front of your water so renders last but when the angle changes its further away so will render the water again. The way round it is to cut up the base model like you have with the water and give each part its on pivot point round its centre. That will mean each part of the base model is smaller and the camera can render it better. The problem also on top of that is you still might get clipping. YOu will get artifacts of polygons, cos this problem still will happen cos they are so close together with the transparencies.

There are 2 ways to fix this. The first is easier. Have your base model cut up as a seperate lwo and have your water as another lwo, both having multiple layers. Load the base model first into lightwave and then the water one. This will allow the shockwave load in the water model second and it will render it in front.

The 2nd way is to change the scale to alot smaller like 10% and it might render ok. Its a hit or a miss. The amount of times I have had to be really careful with placing transparent objects in a world. ITs qutie time consuming, as I had a landscape with trees, fog, plans and fences. It was a nightmare trying to get each bit to render correctly.

HEre are the files I used and the w3d.

I cut them up quickly so sry for the mess :D
 

Attachments

  • Test.rar
    479.4 KB · Views: 235

Chrusion

gold plated 3D
Cool! Thanks for that. I knew it had to be something about object size and Z sorting, just didn't know how to fix it.

What about this... What if each water object had an actual bounding box of 100% transparent geometry placed in each layer, instead of cutting up the base model? That or just a long flat invivible poly? This would force Dir to create a larger bounding box for each object and fix the z-sorting issue, yes? Heh, guess it's faster to give it a try than wait for an answer.

If the above doesn't work, I assume you mean each cut up base model part would go in its own layer and you would save this model sans the water and arrows as a new object, correct?
 

Chrusion

gold plated 3D
Woo HOO! The "add big long 100% transparent poly" method worked!

I was -->||<-- this close to giving up. If there was a free java applet based X3D viewer somewhere, I was going to start over in Blender since it imports LWO, take a few days learning how to animate to my heart's content in it, export as X3D, and say "take that, shockwave!"

Well, your are an answer to prayer, mDoyle! Mine and my wife's. Now I can get crackin' on getting everything animated, finish up the interface programming, and get paid! Should've charged double for all the "pain", but that would've been unfair due to my lack of knowledge of W3D.

Thanks again.
.
 

mdoyle

New member
No worries, am glad I could help.

Your above method will work in this case but just bear in mind that in the future it won't always work. Especially things like outdoor scenes or worlds that have a lot of clone objects that have transparency maps like trees or fences. It can be difficuilt to get right but can always be done.

I would wait for a programme called poetry in motion. I am currently beta testing it and to be honest it will be able to do anythign you have ever asked for. Basically it will export everything lightwave does and more

http://www.pimtools.be/
 

SplineGod

New member
Sounds like the shockwave export hasnt caught up to changes in LW9. Theres a few other 'gotchas' as well.
The transparency issue was something that was common to a lot of early game engines and was due to Z sorting issues and not really a z buffer issue. As was mentioned its a problem that not only affected transparenent polys but could cause other geometry to pop because z sorting didnt look at vertices but at the center of the polygon. So the longer/bigger the polys the more chance this would happen.
 
Top Bottom