Copyentity() w/ animated mesh

Blitz3D Forums/Blitz3D Programming/Copyentity() w/ animated mesh

SabataRH(Posted 2010) [#1]
Since installing the latest Blitz3D patch i seem to be getting pauses in my game when I use copyentity() with animated mesh. The pauses are completely random and never happen at the same time. They can be from 1 sec to 3 seconds long. To prove this I removed copyentity and just loaded the model each time and the pauses vanished.

Any ideas?


SabataRH(Posted 2010) [#2]
Interesting.. Upon testing deeper I've noticed this only seems to occur when I copyEntity() two different meshes that contain animation. Animation may not have anything to do with it but that's what I been copying in my game that has caused these pauses.

Src1=loadanimmesh("blah.b3d")
Src2=loadanimmesh("blah2.b3d")

monster1=copyentity(src1)
monster2=copyentity(src2)

Doing this would result in random pauses ( 1 - 3 seconds in length ) during realtime rendering.

It's worth noting that the pauses don't actually occur during the CopyEntity() call itself but rather at random intervals when the copied meshes are onscreen and visible.


puki(Posted 2010) [#3]
Update 1.101 was meant to fix a bug with shallow copied transparent, boned, meshes. It was known to break other libs, such as FastExtension. FastExtension was subsequently patched in relation to the update, but there may be other things out there that are not fully compliant.


SabataRH(Posted 2010) [#4]
Well after testing most of the day the only way i was able to stop the pauses from happening was to remove LoadAnimMesh() and use LoadMesh() so b3d's animation system seems seriously messed up in the latest release.


Santiworld(Posted 2010) [#5]
Hi, I have the exactly same problem.

for the moment, i use LoadAnimesh without copyentity.

if i have 100 sombies, y need to use 100 times Loadanimmesh("sombie.b3d")

is the only way i found to stop the PAUSES.


problem = copyentity + loadanimmesh

i have v1.104


SabataRH(Posted 2010) [#6]
Same Santiworld, although sometimes even using seperate loadanimmesh commands i still get huge pauses that eventaully lead to "video driver has become corrupted" errors.


Warner(Posted 2010) [#7]
Maybe you could render the same mesh 100 times at different locations, using CameraClsMode false, false?


puki(Posted 2010) [#8]
I'm not seeing any slowdowns.

I can load a single, animated, .b3d with LoadAnimMesh and then create 100 animated copies of it and they appear okay.


How long do you have to wait before you see any slowdown/pauses?

Does the number of copies matter or can it happen with just one copy? Does this affect the time it takes to see a slowdown/pause?


puki(Posted 2010) [#9]
Ah, wait a minute - I just noticed I am still running Blitz3D Update V1.104.


puki(Posted 2010) [#10]
Ah, wait a minute - I just noticed I am still running Blitz3D Update V1.104.

EDIT:
Wait a minute - 1.105 is the Win 7 update.

What version do you both have and what version of Windows do you have?


SabataRH(Posted 2010) [#11]
1.105

Its rather a weird bug, i tried to duplicate it with a small demo but the small demo worked fine.