Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
Quick Reply
Search this Thread
Lab Assistant
Original Poster
#1 Old 17th Aug 2009 at 10:53 PM Last edited by BabaYaga : 17th Aug 2009 at 11:01 PM. Reason: attached wrong file
Default wall shadow bug?
After working off and on for days to get my (remeshed) object's wall shadow to show up, it finally occurred to me to do a test without remeshing the object.

I cloned the Still-life Painting, fixed the package, exported the .lod and .model files, decompiled them, imported them into Milkshape, exported them unchanged, recompiled them, and imported them back into the package. I didn't change anything else in the package.

What I found was that the wall shadow still did not show up, so it seems like either there's a step I'm missing, or this is a bug in one of the tools.

I also tried using a different painting-- the Nature Lanscape, with the same results.

Screenshot and package file attached in case they're needed.
Screenshots
Attached files:
File Type: zip  Babayaga_PaintingStillLife_shadowtest.zip (580.1 KB, 8 downloads) - View custom content
Advertisement
Alchemist
#2 Old 19th Aug 2009 at 3:16 AM
I saw this post the other day, I worked on something else, and just sort of forgot about it until I saw your other note... sorry.

I replicated your findings here, but I am at a loss to explain it for sure. Some game mechanism generates a texture image realtime, and projects it on the extra mesh square. I suspect that for the wallshadow that perhaps the shadow material must remain linked to it's original texture and not a clone of that texture. Of course, for the picture itself you want a cloned material, so you can remake it without altering the game images.

I am thinking the cloning of the wallshadow material perhaps causes some part of the game to not recognize the texture and create the proper image for the shadow. You can see that there isn't actually a real DDS image of the shadow for the painting, it is sized and created when the painting is hung on the wall.

This could make an interesting lab experiment, but I am not sure that I have the time right now to play with it... so many mysteries. However, I will say that the TGIs linked to in the recompiled mesh are those that are shown in the ".mcfg" file (which may be viewed in notepad or wordpad). Changing the texture referenced in "ExternRef00" from the clone copy to the original TGI may alter behavior... if you do this, the digit count is significant, make sure it matched the length of the lines below it.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Lab Assistant
Original Poster
#3 Old 20th Aug 2009 at 10:03 AM
ok, thanks Wes. I'll check into the TGIs and mess around, and I'll update if I find anything worth reporting.

Although for now I think I'll try to set my perfectionistic tendencies aside and upload at least one of my objects, even though it will be shadowless. (I know most players won't even notice...)
Alchemist
#4 Old 20th Aug 2009 at 3:38 PM
I think perfectionism is wonderful... but yeah, sometimes it has to get sacrificed on the altar of productivity.

If it isn't the texture instance, there is something special about the shadow that identifies it to be a dynamic texture, and when we clone it we are breaking it in the process.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Alchemist
#5 Old 27th Aug 2009 at 9:44 PM
I THINK I have this one tracked down. It appears to be related to having non-zero normals in the wall/ground shadow mesh on the 16-byte fixed vrtf format. Yeah, it's technical, but I think the remeshing process added something the game apparently doesn't want.

To check, download V0.15 of the ObjTool.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
One horse disagreer of the Apocalypse
#6 Old 28th Aug 2009 at 7:07 AM
Yes I verified the problem wasn't due to the cloning process. During tests, the shadow was fine after cloning. It only got lost after going through the export/import process with the mesh tool.

"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
Lab Assistant
Original Poster
#7 Old 30th Aug 2009 at 12:56 AM
Tested this again with v15 as suggested, but still no shadow. I only tried it with one item so far; I might try it with another in a bit when I have more time...
Lab Assistant
Original Poster
#8 Old 6th Sep 2009 at 10:00 PM
You probably already know this, but it works now! Yay!

Any tips as to what the scaling is on the shadow mesh? I needed to move the shadow up to follow my object mesh, which was higher than the origina, andl it was just trial-and-error to figure out how much to move it...
Alchemist
#9 Old 7th Sep 2009 at 1:19 AM
The scaling is (about) 1/128 the previous size, however the recompression with a "0" scaler value and the zeroed normals are an important part of the process. The scaling could be related to a change in the base from centimeters to meters in Maya, which is what I think was used to build the original objects.

It would probably be possible to determine which VBUF parts were used for DropShadow parts in any particular clone, and substituting the block from a freshly decompiled MLOD to "rescue" previous projects. However, detailing how to do this, and determining when it might be inadvisable to do so would require far more time and effort that would be required just to move the meshes over from an old project to a newly remade one, so that is what I recommend that you do.

On a going forward basis, your newly made projects will start with the dropshadow parts properly sized, so you can just do something simple like scaling them a little smaller or bigger based on the relative size of your new mesh versus the original.

<* Wes *>

If you like to say what you think, be sure you know which to do first.
Back to top