Strange Pview error

Hey all, Ive got this model (that i have pviewed before) - now getting this

C:\Users\Roger\Documents\maya\projects\default\scenes\Risk>pview risk_05.egg
Known pipe types:
  wglGraphicsPipe
(all display modules loaded.)
Loading risk_05.egg
Assertion failed: (int)size <= _requested_heap_size, file c:\temp\mkpr\dtool\src
\dtoolbase\memoryHook.I, line 44

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

Thank you for your help in advance :slight_smile:,
Roger

Weird, am now getting the same crash on all other maya models i have made, but the pview works fine on default stuff (environment).

Crashing as well when i do a loader.loadModel(“myModel”), very very strange.

Any suggestions guys?

Seems like a mismatched Panda build. Either that or I’ve just introduced a major bug in the egg loader.

Are all of your dll’s (including pandatool) up-to-date from the same build? And you don’t have multiple versions of Panda installed that might be conflicting?

If all that is good, where did your Panda build come from?

David

Iam working on the same thing as Roger and I am also getting the errors.

All files last modified : 5/1/2008
couldnt find pandatool.dll but I could find libp3dtool.dll

I used the panda3D windows installer to get my version of panda and it is 1.5.2.

Hmm, this might be just the on-again, off-again bug in 1.5.2 that people have occasionally reported (you’ll find a few similar reports if you search the forums).

If this is so, then it isn’t a problem with the models per se–at least I don’t think it is–but the bug is triggered by some unlucky configuration of bits in memory, which would explain why models that used to work are suddenly crashing. (Though it’s a remarkable coincidence that both of you are suddenly crashing at about the same time.)

Are you able to download the latest CVS version of Panda and build it from source? I did find and fix a low-level memory problem recently that might be related to this bug.

David

I was thinking about build panda from source. I will go ahead and try that out and see what happens.

He is using the maya models that I converted for him; ill try a build and see if we can get lucky (although building from source scares me).

And the worm hole goes deeper.

I noticed I had a second install of python installed. So I removed both python and panda reinstalled panda so now I only have 1 version of panda and 1 version of python(the one that comes with panda). So I go to pview our model and it works… So next I load the model into the Hello World tutorial instead of the grassy scene and it works… then I removed all the code to rotate the Camera and animate the panda… and it gives me the same

C:\Users\RanBlade\Programming\Projects\RISK-SvN\Art\Models>pview risk_05.egg
Known pipe types:
  wglGraphicsPipe
(all display modules loaded.)
Loading risk_05.egg
Assertion failed: (int)size <= _requested_heap_size, file c:\temp\mkpr\dtool\src
\dtoolbase\memoryHook.I, line 44

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

error… and then as in example above the pview gets the same error as the hello world program…

Now time to try a source build just thought I would give that a try.

to note though I can still pview and load the models that came with the panda install. ie environment.egg

Strange strange strange,

Well, I did the same and re installed panda + python - The model loaded once, and then now cant load any. There hast to be some temporary cache or something these eggs are getting converted to thats corrupting itself, I wish i knew a bit more about the process eggs go through as they get loaded.

Good news - we are all using the same version of panda; and ive converted the eggs to bams, and problem is gone (likely because bam probably doesn’t get converted).

If this symptom can be fixed by getting the head of the tree - awesome. If its still iffy, i have never had good luck building panda myself :frowning:. Perhaps i can pick up an incremental build.

If anyone else has any insight - Would be VERY helpful.

Roger

Idk if this may help or not, I know it fixs my .x problem, I know the one you download from the “download” is a little old and needs to be updated.
bin.pro-rsoft.com/Panda3D-1.5.3.exe -windows installer

be aware. the new official 1.5.3 is to be released soon. just in case you think about updateing.
and btw. it doesnt sound like the infamous X-case-sensivity problem
@rwhughust: i think there is indeed a modelcache. i think it was mentioned before in other threads. but i dunno if it applies to models loaded between sessions. but there definetly is one for cacheing models while panda is running

There is a cache, but I’m not sure that’s what the problem is here. The cache automatically converts egg files to bam and saves them in that form. I don’t know what the cache directory is by default on the published Panda; check your Config.prc file for “model-cache-dir”. You can empty that directory to flush the cache, or remove the definition from your Config.prc to disable it.

David

I was wrong. Bams are now doing it as well.

Exact same symptom on the experimental build; it will load the model once (via any means (loader.loadModel, pview ect) and then any timeafter that it will throw the assertion.

*edit - 1.5.3 - has an even more strange error (double checked to make sure i am not crazy).

C:\Documents and Settings\roger\Desktop\blah\Risk\Art\Models>maya2egg8
5 risk_05.mb r.egg

Initializing Maya.
:maya(warning): This program was compiled using Maya version 8.5, but
you are now running it with Maya version 8.5.  The program may crash or
produce incorrect results.

C:\Documents and Settings\roger\Desktop\blah\Risk\Art\Models>pview r.e
gg
Known pipe types:
  wglGraphicsPipe
(all display modules loaded.)
Loading r.egg
:loader(error): Couldn't load file r.egg: not found on model path (currently: "/
c/Panda3D-1.5.3/etc/..;/c/Panda3D-1.5.3/etc/../models")
Unable to load r.egg

I am guessing that is some fat finger on my behalf; but it wont pview and models in its own directory. I then just copied it into the model directory for panda, and once again it read once; now wont load anymore.

Hopefully we can find this bug; being that my senior project mates are much more scared than I to touch large builds (considering I am terrified myself). But I am going to bite the bullet and do so, lets pray it will work.

Any ideas in the meantime; again will be greatly appreciated.
Roger

Well, the pview issue is because you have somehow lost “.” from your model-path. Put a line like this:

model-path .

in your Config.prc file.

The weird Maya error must be a subminor version number issue, too minor to actually be part of the major.minor number that’s displayed. But still, it’s complaining there is a small difference between the version of Maya it compiled with and the version you are running with. Probably not a real problem.

As to your recurring crash, well, there’s no help for it but to learn how to build Panda. :confused: The good news is, building Panda in the real world, with makepanda, is much easier than building it the way we do in the VR Studio.

David

Awesome :slight_smile:, Getting to it today.

Roger

Well, built it off the head of the tree; and it crashed but far less often.

Interestingly enough, with the symptom of it only crashing sometimes; and the fact you can step through the python assert and the rest of the program will work fine, I decided to comment out the assert - and i am not crashing at all anymore.

Line 38: dtool/src/dtoolbase/memoryHook.I

dec_heap(size_t size) {
#ifdef DO_MEMORY_USAGE
  //assert((int)size <= _requested_heap_size);
  AtomicAdjust::add(_requested_heap_size, -(AtomicAdjust::Integer)size);
#endif  // DO_MEMORY_USAGE

Now that the assert is commented out - No crashing (although i expected it to hard crash or something; being that asserts are usually put in for good reason, and especially if bits are being flipped around incorrectly).

Hopefully it is truely fixed - only way to know for sure is just to dev on it for awhile.

Roger
[/code]

In fact, this assert is not critical–if it fails the assert, it just means the memory tracking in PStats will go negative. I’m sure you can live with this.

I’ve commented out the assert on the trunk for now until I can figure out what’s really going on.

David

Is it possible to have the compiled version of panda3D without this assert ?
Cause I have the same problem, and the 2 version of Panda3D-1.5.3 I tried also have it :confused:

Yeah, the fix is in the final 1.5.3 which will be released quite soon. If you can’t wait, email me (using the email link at my profile page) and I’ll email you the build (please specify whether you run windows or linux.)