Box-box collisions?

Hi to all,

I have two models, with different collision solids. The first model has a collisionSphere solid and the second one has a series of collisionPolygons. Both models are “cubic” and are made up of different box-shapes. The problem comes about when the collisionSphere collides with the collisionNode made up of the different collisionPolygons; the collisionSphere moves and shakes all over, I suppose as a result of having so many different polygons colliding with it. This is a large problem for me, because the project I’m working features cubes almost exclusively. Going through the manual, I see that only the collisionSphere can be used as a from object, so there are no box-box collision solids, perhaps with the exception of the collisionBox. But to what extent can I use the collisionBox as a from object? Can I perform box-box collisions, box-sphere collisions, box-ray collisions, box-tube collisions? If not, then I would have to migrate to ODE, [or bullet with a different sound library…].

With ODE, how does one manipulate the scale of a body? To change the position, I see one does, body.setPosition(), and to do rotations, one either does body.setQuaternion() or body.setRotation(). How does one change the scale? I know it’s not advisable to change the scale, but there is no other choice given what I’m building.

Thanks.

I don’t think box-box collisions are currently implemented, sorry. The only thing that a box can be used as a ‘from’ object for is a box-into-sphere collision.

Instead of scaling the body, you could just increase the size of the OdeBoxGeom.

Thanks, yes I played around with box collision shapes and saw that myself. ODE cannot work for me, because all I want is to have box-box collisions to avoid the jittering that comes with sphere-box collisions, I do not need any physics for this project. Looking at bullet, I see I am faced with the same problem, box-box collisions exist, but physics is everywhere and moving a character is full of jitter. I saw this:

[New Bullet Character Controller)

And this thread:

All discussing bullet, the former link describing how to add a character controller. All I need is for a box to not go through another box, minus the physics, much like how panda3d’s internal collision system prevents a sphere from going through another sphere. Is there a way to have collisions in bullet, but without any physics? Forgive the ignorance on my part. I tried creating nodes with no mass, but then I saw static objects will just go through other static objects. I tried kinematic objects with static objects, but that doesn’t collide; dynamic-static and kinematic-dynamic collisions all involve some sort of physics. I tried using the character controller that comes with bullet but used a box for the character instead of a capsule. It worked fine, except that whenever I changed the heading of the box, it spun incessantly about its own z-axis. So is there a way to use collisions, specifically box-box collisions with bullet without physics?

Thanks.

I don’t know about Bullet, but you can use ODE as just a collision engine. And it most definitely does support box-box collisions, otherwise the sample on this page wouldn’t work:
panda3d.org/manual/index.ph … n_with_ODE

Although it might be a good idea if we added box-box collisions to Panda’s own system.

Okay, though with ODE, I cannot in any way visualize the collisions via collision geometry, plus I don’t know how the collision geometry will react with models that change their scales over time. However if physics can be completely off, then I suppose I’ll have to struggle with it until I get something that works; or I could just use multiple spheres instead of using any boxes/polygons, i.e. just wrap a sphere around each individual box that makes up a model, maybe something as simple as that could work.

I forgot to ask, how would one use ODE solely as a collision engine? Also, how does one manipulate the size of an ODEGeom? To use it as collision engine only, I tried this:

#boxes:
box = loader.loadModel("box")
# Make sure its center is at 0, 0, 0 like OdeBoxGeom
box.setPos(-.5, -.5, -.5)
box.flattenLight() # Apply transform
box.setTextureOff()
box.reparentTo(render)
box.setZ(10)

#box 2:
box2=box.copyTo(render) 
box2.setPos(-.5, -.5, -.5)
box2.setPos(box.getPos())
box2.setY(box2,5)
#geom a:
boxGeom = OdeBoxGeom(space, 1, 1, 1)
boxGeom.setCollideBits(BitMask32(0x00000002))
boxGeom.setCategoryBits(BitMask32(0x00000001))
boxGeom.setPosition(box.getPos(render))

#geom b:
boxGeom2 = OdeBoxGeom(space, 1, 1, 1)
boxGeom2.setCollideBits(BitMask32(0x00000001))
boxGeom2.setCategoryBits(BitMask32(0x00000002))
boxGeom2.setPosition(box2.getPos(render))

#simulation task:
  space.autoCollide() # Setup the contact joints
  # Step the simulation and set the new positions
  world.quickStep(globalClock.getDt())
  box.setPosQuat(render, boxGeom.getPosition(), Quat(boxGeom.getQuaternion()))
  box2.setPosQuat(render, boxGeom2.getPosition(), Quat(boxGeom2.getQuaternion()))
  contactgroup.empty() # Clear the contact joints
  return task.cont

#moving task, moves boxGeom1 around:
    if(key_sets["u"]!=0):
        #moving forwards, affect y:
        boxGeom.setPosition(boxGeom.getPosition().x,boxGeom.getPosition().y+25 * globalClock.getDt(),boxGeom.getPosition().z)

I didn’t add any bodies, and tried to deal only with collision geometry. No collisions occur. So how does one set up a collision only scenario without physics in ODE? (I also realized that the sphere idea was bad. For instance, what happens when the player is walking on top of a series of boxes? The spheres would make the walk look bumpy instead of smooth and flat…)

Thanks.

Another option might be bullet. It comes with ghost nodes which don’t cause reaction forces. So no physics when using those.
panda3d.org/manual/index.php/Bullet_Ghosts

I just implemented box-box collisions in Panda today, as well as box-into-polygon and box-into-plane. If you grab the latest devel build of Panda 1.10, you will be able to use Panda’s own CollisionBox, without having to use external physics engines.

I’ve updated the table at the bottom of this page, which shows with which solids the box can be used as a “from” object:
panda3d.org/manual/index.ph … ion_Solids

As for ODE, you don’t have to use the autoCollide feature (which is what makes things bounce off of each other). Instead, you can call the collide() function, which allows you to pass in a Python function that will be called for every collision that occurs.

As for changing the size of your OdeBoxGeom, I imagine that changing the parameters to the OdeBoxGeom constructor would probably do it.

Sorry for the late reply. I appreciate the swiftness with which you have handled this matter, but there is a problem with v1.10.0 on my pc [the one with older specs, which is what I am using to develop my project, to ensure that it works on as many systems as possible…]. Whenever I run any of the sample programs, except the solar system ones, I get unhandled expcetions. Whenever I run my actual game, this is the exception I get:

Unhandled exception at 0x00000046 in ppython.exe: 0xC0000005: Access violation reading location 0x00000046.

And so I cannot even use that version of panda3d once it is installed. Here is how some models look like when loaded in v1.10.0, a problem similar to what I get with v1.9.0 and 1.9.1:


When the model is further away it looks like a dark silhouette with or without light. I don’t know if that is intentional or not.

I know takes a lot of effort to do this, but I just have to ask, you mentioned the possibility of a v 1.8.2, can’t there be one with box-box collisions and the sound issue fixed similarly? Like a v 1.8.1 but with box-box collisions etc and the sound issue fixed [everything else staying the same]? I ask this because 1.8.1 is the latest version that works (with the exception of the sound issue) for me in both my old and new pc.

Thanks.

I’ll think about it, but it’s indeed a lot of work and I feel that fixing the issues in 1.9 or 1.10 might be less work than making a new 1.8 release (and these issues need to be fixed anyway).

In the meantime, can you give me more information about your computer? Which processor do you have, and which video card? Could you set “notify-level-glgsg debug” in Config.prc and give me the command line output? Maybe I’ll be able to find an old video card with which to reproduce the issue.

Here are the specs for the computer:

System:
OS- Windows xp professional 32-bit (5.1, build 2600)
system model: dell optiplex 360
Processor: Pentium (R) Dual-Core CPU E5300 @ 2.60 GHz (2 cpus)
Memory: 1024 MB RAM
Directx version: 9.0c (4.09.0000.0904)

Display:
Intel(R) G33/G31 Express Chipset Family
Chip Type: Intel(R) GMA 3100
Total Memory: 384 MB
AGP Texture Acceleration: none

Drivers:
Main Driver: igxprd32.dll
Version: 6.14.0010.4957
Mini VDD: igxpmp32.sys
DDI version: 9(or higher)

Here is the output when I set “notify-level-glgsg debug”:

:display:gsg:glgsg(debug): HAS EXT WGL_ARB_pixel_format 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_multisample 0
:display:gsg:glgsg(debug): GL_VENDOR = Intel
:display:gsg:glgsg(debug): GL_RENDERER = Intel Bear Lake B
:display:gsg:glgsg(debug): GL_VERSION = 1.4.0 - Build 7.14.10.4957, decoded to 1
.4
:display:gsg:glgsg(debug): GL Extensions:
:display:gsg:glgsg(debug): GL_3DFX_texture_compression_FXT1
:display:gsg:glgsg(debug): GL_ARB_depth_texture
:display:gsg:glgsg(debug): GL_ARB_fragment_program
:display:gsg:glgsg(debug): GL_ARB_multitexture
:display:gsg:glgsg(debug): GL_ARB_point_parameters
:display:gsg:glgsg(debug): GL_ARB_shadow
:display:gsg:glgsg(debug): GL_ARB_texture_border_clamp
:display:gsg:glgsg(debug): GL_ARB_texture_compression
:display:gsg:glgsg(debug): GL_ARB_texture_cube_map
:display:gsg:glgsg(debug): GL_ARB_texture_env_add
:display:gsg:glgsg(debug): GL_ARB_texture_env_combine
:display:gsg:glgsg(debug): GL_ARB_texture_env_crossbar
:display:gsg:glgsg(debug): GL_ARB_texture_env_dot3
:display:gsg:glgsg(debug): GL_ARB_transpose_matrix
:display:gsg:glgsg(debug): GL_ARB_vertex_buffer_object
:display:gsg:glgsg(debug): GL_ARB_vertex_program
:display:gsg:glgsg(debug): GL_ARB_window_pos
:display:gsg:glgsg(debug): GL_EXT_abgr
:display:gsg:glgsg(debug): GL_EXT_bgra
:display:gsg:glgsg(debug): GL_EXT_blend_color
:display:gsg:glgsg(debug): GL_EXT_blend_func_separate
:display:gsg:glgsg(debug): GL_EXT_blend_minmax
:display:gsg:glgsg(debug): GL_EXT_blend_subtract
:display:gsg:glgsg(debug): GL_EXT_clip_volume_hint
:display:gsg:glgsg(debug): GL_EXT_compiled_vertex_array
:display:gsg:glgsg(debug): GL_EXT_cull_vertex
:display:gsg:glgsg(debug): GL_EXT_draw_range_elements
:display:gsg:glgsg(debug): GL_EXT_fog_coord
:display:gsg:glgsg(debug): GL_EXT_multi_draw_arrays
:display:gsg:glgsg(debug): GL_EXT_packed_pixels
:display:gsg:glgsg(debug): GL_EXT_rescale_normal
:display:gsg:glgsg(debug): GL_EXT_secondary_color
:display:gsg:glgsg(debug): GL_EXT_separate_specular_color
:display:gsg:glgsg(debug): GL_EXT_shadow_funcs
:display:gsg:glgsg(debug): GL_EXT_stencil_two_side
:display:gsg:glgsg(debug): GL_EXT_stencil_wrap
:display:gsg:glgsg(debug): GL_EXT_texture3D
:display:gsg:glgsg(debug): GL_EXT_texture_compression_s3tc
:display:gsg:glgsg(debug): GL_EXT_texture_env_add
:display:gsg:glgsg(debug): GL_EXT_texture_env_combine
:display:gsg:glgsg(debug): GL_EXT_texture_filter_anisotropic
:display:gsg:glgsg(debug): GL_EXT_texture_lod_bias
:display:gsg:glgsg(debug): GL_IBM_texture_mirrored_repeat
:display:gsg:glgsg(debug): GL_NV_blend_square
:display:gsg:glgsg(debug): GL_NV_texgen_reflection
:display:gsg:glgsg(debug): GL_SGIS_generate_mipmap
:display:gsg:glgsg(debug): GL_SGIS_texture_edge_clamp
:display:gsg:glgsg(debug): GL_SGIS_texture_lod
:display:gsg:glgsg(debug): GL_WIN_swap_hint
:display:gsg:glgsg(debug): WGL_ARB_buffer_region
:display:gsg:glgsg(debug): WGL_ARB_extensions_string
:display:gsg:glgsg(debug): WGL_ARB_make_current_read
:display:gsg:glgsg(debug): WGL_ARB_pbuffer
:display:gsg:glgsg(debug): WGL_ARB_pixel_format
:display:gsg:glgsg(debug): WGL_EXT_extensions_string
:display:gsg:glgsg(debug): WGL_EXT_swap_control
:display:gsg:glgsg(debug): HAS EXT GL_ARB_point_sprite 0
:display:gsg:glgsg(debug): HAS EXT GL_OES_point_sprite 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_blend 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_matrix_palette 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_depth_texture 1
:display:gsg:glgsg(debug): HAS EXT GL_EXT_packed_depth_stencil 0
:display:gsg:glgsg(debug): HAS EXT GL_OES_packed_depth_stencil 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_array 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_cube_map 1
:display:gsg:glgsg(debug): HAS EXT GL_EXT_bgra 1
:display:gsg:glgsg(debug): HAS EXT GL_EXT_rescale_normal 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_multisample 0
:display:gsg:glgsg(debug): HAS EXT GL_SGIS_generate_mipmap 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_non_power_of_two 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_depth_texture 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_shadow 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_fragment_program_shadow 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_env_combine 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_env_crossbar 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_env_dot3 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_buffer_object 1
:display:gsg:glgsg(debug): HAS EXT GL_ATI_draw_buffers 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_geometry_shader4 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_framebuffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_framebuffer_multisample 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_framebuffer_multisample_coverage 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_framebuffer_blit 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_draw_buffers 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_occlusion_query 0
:display:gsg:glgsg(debug): HAS EXT GL_SGIS_texture_edge_clamp 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_border_clamp 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_mirrored_repeat 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_mirror_clamp 0
:display:gsg:glgsg(debug): max texture dimension = 2048, max 3d texture = 128, m
ax 2d texture array = 0, max cube map = 1024
:display:gsg:glgsg(debug): max_elements_vertices = 1024, max_elements_indices =
1024
:display:gsg:glgsg(debug): vertex buffer objects are supported.
:display:gsg:glgsg(debug): Supported compressed texture formats:
  GL_COMPRESSED_RGB_S3TC_DXT1_EXT
  GL_COMPRESSED_RGBA_S3TC_DXT3_EXT
  GL_COMPRESSED_RGBA_S3TC_DXT5_EXT
  GL_COMPRESSED_RGBA_S3TC_DXT1_EXT
  GL_COMPRESSED_RGB_FXT1_3DFX
  GL_COMPRESSED_RGBA_FXT1_3DFX
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_filter_anisotropic 1
:display:gsg:glgsg(error): at 1560 of c:\buildslave\release_sdk_win32\build\pand
a3d\panda\src\glstuff\glGraphicsStateGuardian_src.cxx : invalid enumerant
:display:gsg:glgsg(debug): HAS EXT GL_EXT_stencil_wrap 1
:display:gsg:glgsg(debug): HAS EXT GL_EXT_stencil_two_side 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_draw_instanced 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_draw_instanced 0
:display:gsg:glgsg(debug): max lights = 16
:display:gsg:glgsg(debug): max clip planes = 6
:display:gsg:glgsg(debug): max texture stages = 8
:display:gsg:glgsg(debug):
Cg vertex profile = arbvp1  id = 6150
Cg pixel profile = arbfp1  id = 7000
shader model = 2
:display:gsg:glgsg(debug): HAS EXT WGL_EXT_swap_control 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_pbuffer 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_pixel_format 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_multisample 0
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_render_texture 0
:display:gsg:glgsg(debug): loading uncompressed texture _0
:display:gsg:glgsg(debug): loading new texture object, 256 x 256 x 1, mipmaps 1,
 uses_mipmaps = 1
:display:gsg:glgsg(debug): loading uncompressed texture _0
:display:gsg:glgsg(debug): subloading existing texture object, 256 x 256 x 1, mi
pmaps 1, uses_mipmaps = 1
:display:gsg:glgsg(debug): GLGraphicsStateGuardian 00BC5AB4 destructing

Is the unhandled exception a graphics issue too?

Hmm, that’s quite an old computer, and the Intel GMA 3100 is quite an incapable graphics card. It only supports OpenGL 1.4, it seems. I presume you have installed the latest available drivers for your video card?

I’m having trouble interpreting your output since I’m not seeing information I’m expecting to see. Which version of Panda did you make this output with?

Since your card only supports OpenGL 1.4, which is quite an ancient OpenGL version, it’s quite possible that Panda is using some feature that was introduced after OpenGL 1.4, without first checking whether it is supported. Do you have more information about what kind of situations the issue occurs in? Does the issue occur when running pview? Does it occur when lighting is enabled, or when shaders are enabled, or something like that?

Also, are there warnings displayed on the console when you encounter such a graphical issue?

I don’t know whether the unhandled exception is a graphics issue. I’d need a stack trace or at least an indication of which module the exception occurs in to determine that.

I tried updating to the latest version today, but got a notification saying that I already have the latest version installed, so yes I do.

I made that output with v1.8.1. Here is output I made with v1.10.0:

:display:gsg:glgsg(debug): HAS EXT WGL_ARB_pixel_format 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_multisample 0
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_create_context 0
:display:gsg:glgsg(debug): GL_VENDOR = Intel
:display:gsg:glgsg(debug): GL_RENDERER = Intel Bear Lake B
:display:gsg:glgsg(debug): GL_VERSION = 1.4.0 - Build 7.14.10.4957
:display:gsg:glgsg(debug): GL_VERSION decoded to: 1.4
:display:gsg:glgsg(debug): HAS EXT GL_ARB_shading_language_100 0
:display:gsg:glgsg(debug): Detected GLSL version: 0.0
:display:gsg:glgsg(debug): Using compatibility profile
:display:gsg:glgsg(debug): GL Extensions:
  GL_3DFX_texture_compression_FXT1       GL_ARB_depth_texture
  GL_ARB_fragment_program                GL_ARB_multitexture
  GL_ARB_point_parameters                GL_ARB_shadow
  GL_ARB_texture_border_clamp            GL_ARB_texture_compression
  GL_ARB_texture_cube_map                GL_ARB_texture_env_add
  GL_ARB_texture_env_combine             GL_ARB_texture_env_crossbar
  GL_ARB_texture_env_dot3                GL_ARB_transpose_matrix
  GL_ARB_vertex_buffer_object            GL_ARB_vertex_program
  GL_ARB_window_pos                      GL_EXT_abgr
  GL_EXT_bgra                            GL_EXT_blend_color
  GL_EXT_blend_func_separate             GL_EXT_blend_minmax
  GL_EXT_blend_subtract                  GL_EXT_clip_volume_hint
  GL_EXT_compiled_vertex_array           GL_EXT_cull_vertex
  GL_EXT_draw_range_elements             GL_EXT_fog_coord
  GL_EXT_multi_draw_arrays               GL_EXT_packed_pixels
  GL_EXT_rescale_normal                  GL_EXT_secondary_color
  GL_EXT_separate_specular_color         GL_EXT_shadow_funcs
  GL_EXT_stencil_two_side                GL_EXT_stencil_wrap
  GL_EXT_texture3D                       GL_EXT_texture_compression_s3tc
  GL_EXT_texture_env_add                 GL_EXT_texture_env_combine
  GL_EXT_texture_filter_anisotropic      GL_EXT_texture_lod_bias
  GL_IBM_texture_mirrored_repeat         GL_NV_blend_square
  GL_NV_texgen_reflection                GL_SGIS_generate_mipmap
  GL_SGIS_texture_edge_clamp             GL_SGIS_texture_lod
  GL_WIN_swap_hint                       WGL_ARB_buffer_region
  WGL_ARB_extensions_string              WGL_ARB_make_current_read
  WGL_ARB_pbuffer                        WGL_ARB_pixel_format
  WGL_EXT_extensions_string              WGL_EXT_swap_control
:display:gsg:glgsg(debug): gl-debug NOT enabled.
:display:gsg:glgsg(debug): HAS EXT GL_KHR_debug 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_debug_output 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_point_sprite 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_ES3_compatibility 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_storage 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_storage 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_clear_texture 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_clear_buffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_array 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_cube_map 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_seamless_cube_map 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_cube_map_array 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_buffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_sRGB 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_sRGB 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_bgra 1
:display:gsg:glgsg(debug): HAS EXT GL_EXT_rescale_normal 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_array_bgra 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_vertex_array_bgra 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_type_10f_11f_11f_rev 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_multisample 0
:display:gsg:glgsg(debug): HAS EXT GL_SGIS_generate_mipmap 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_non_power_of_two 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_framebuffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_packed_depth_stencil 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_shadow 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_fragment_program_shadow 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_env_combine 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_env_crossbar 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_env_dot3 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_buffer_object 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_map_buffer_range 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_buffer_storage 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_array_object 0
:display:gsg:glgsg(debug): HAS EXT GL_OES_vertex_array_object 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_tessellation_shader 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_geometry_shader4 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_geometry_shader4 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_program 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_fragment_program 1
:display:gsg:glgsg(debug): HAS EXT GL_NV_gpu_program5 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_gpu_program4 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_vertex_program3 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_vertex_program2 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_vertex_program1_1 0
:display:gsg:glgsg(debug): HAS EXT GL_ATI_draw_buffers 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_compute_shader 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_uniform_buffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_instanced_arrays 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_draw_instanced 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_draw_instanced 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_draw_indirect 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_framebuffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_direct_state_access 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_framebuffer_multisample 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_framebuffer_multisample_coverage 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_framebuffer_blit 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_draw_buffers 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_viewport_array 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_occlusion_query 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_timer_query 0
:display:gsg:glgsg(debug): HAS EXT GL_SGIS_texture_edge_clamp 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_border_clamp 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_mirrored_repeat 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_mirror_clamp 0
:display:gsg:glgsg(debug): max texture dimension = 2048, max 3d texture = 128, m
ax 2d texture array = 0, max cube map = 1024
:display:gsg:glgsg(debug): max_elements_vertices = 1024, max_elements_indices =
1024
:display:gsg:glgsg(debug): vertex buffer objects are supported.
:display:gsg:glgsg(debug): Supported compressed texture formats:
  GL_COMPRESSED_RGB_S3TC_DXT1_EXT
  GL_COMPRESSED_RGBA_S3TC_DXT3_EXT
  GL_COMPRESSED_RGBA_S3TC_DXT5_EXT
  GL_COMPRESSED_RGBA_S3TC_DXT1_EXT
  GL_COMPRESSED_RGB_FXT1_3DFX
  GL_COMPRESSED_RGBA_FXT1_3DFX
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_filter_anisotropic 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_shader_image_load_store 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_shader_image_load_store 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_sampler_objects 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_multi_bind 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_internalformat_query2 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_bindless_texture 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_get_program_binary 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_stencil_wrap 1
:display:gsg:glgsg(debug): HAS EXT GL_EXT_stencil_two_side 1
:display:gsg:glgsg(debug): max lights = 16
:display:gsg:glgsg(debug): max clip planes = 6
:display:gsg:glgsg(debug): max texture stages = 8
:display:gsg:glgsg(debug): HAS EXT GL_NV_gpu_program5 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_gpu_program4 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_fragment_program2 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_fragment_program 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_fragment_program 1
:display:gsg:glgsg(debug): Supported Cg profiles:
:display:gsg:glgsg(debug):   arbvp1
:display:gsg:glgsg(debug):   arbfp1
:display:gsg:glgsg(debug): Cg GLSL version = CG_GL_GLSL_DEFAULT
:display:gsg:glgsg(debug): Cg latest vertex profile = arbvp1
:display:gsg:glgsg(debug): Cg latest fragment profile = arbfp1
:display:gsg:glgsg(debug): Cg latest geometry profile = unknown
:display:gsg:glgsg(debug): basic-shaders-only #f
:display:gsg:glgsg(debug): Cg active vertex profile = arbvp1
:display:gsg:glgsg(debug): Cg active fragment profile = arbfp1
:display:gsg:glgsg(debug): Cg active geometry profile = unknown
:display:gsg:glgsg(debug): shader model = 2.0
:display:gsg:glgsg(debug): HAS EXT WGL_EXT_swap_control 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_pbuffer 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_pixel_format 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_multisample 0
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_render_texture 0
:display:gsg:glgsg(error): at 3384 of c:\buildslave\sdk-windows-i386\build\panda
\src\glstuff\glGraphicsStateGuardian_src.cxx : invalid enumerant
:display:gsg:glgsg(error): An OpenGL error (invalid enumerant) has occurred.  Se
t gl-check-errors #t in your PRC file to display more information.
:display:gsg:glgsg(debug): loading uncompressed texture rock-floor.rgb
:display:gsg:glgsg(debug): loading new texture object for rock-floor.rgb, 256 x
256 x 1, z = 0, mipmaps 1, uses_mipmaps = 0
:display:gsg:glgsg(debug): GLGraphicsStateGuardian 0192B334 destructing
59202 frames in 63.6509 seconds.
930.105 fps average (1.07515ms)

I hope it helps.

If you mean the issue whereby the model is rendered similar to the picture I uploaded in my prior post, then the issue does occur both in game and with pview when I view certain types of models. For example, the models that I generate procedurally are all properly rendered, but the panda model, the ralph model among others all are rendered like that. If you mean the unhandled exception, then that occurs for example when I try to run the roaming ralph demo that comes with v1.10 and panda3d-ppython.exe- crashes some times with that output. Here is a call stack, if that helps:

>	00000010()	
 	libpandagl.dll!02941d79() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for libpandagl.dll]	
 	libpandagl.dll!02943bdd() 	
 	libpandagl.dll!029459f2() 	
 	libpandagl.dll!02949a39() 	
 	libpandagl.dll!0294a698() 	
 	libpanda.dll!01205e78() 	
 	libpanda.dll!01363324() 	
 	libpanda.dll!012c8e7d() 	
 	libpanda.dll!0144cce6() 	
 	libpanda.dll!0137307b() 	
 	libpanda.dll!0124f39e() 	
 	python27.dll!1e08fb0b() 	
 	python27.dll!1e11e183() 	
 	core.pyd!1015ff91() 	
 	python27.dll!1e0edb2b() 	
 	python27.dll!1e0f012a() 	
 	python27.dll!1e0f1100() 	
 	python27.dll!1e09ebca() 	
 	python27.dll!1e07cdec() 	
 	python27.dll!1e088a17() 	
 	python27.dll!1e08fb0b() 	
 	core.pyd!1017528f() 	
 	python27.dll!1e07cdec() 	
 	libpanda.dll!01479464() 	
 	core.pyd!1035c9a7() 	
 	libp3dtoolconfig.dll!00d45a91() 	
 	libpandaexpress.dll!00e5adb0() 	
 	ntdll.dll!7c90d8ba() 	
 	kernel32.dll!7c80a4db() 	
 	python27.dll!1e11e35e() 	
 	python27.dll!1e109ddd() 	
 	python27.dll!1e109e1a() 	
 	python27.dll!1e1170ca() 	
 	python27.dll!1e118215() 	
 	python27.dll!1e1187b0() 	
 	python27.dll!1e119129() 	
 	python27.dll!1e038cb5() 	
 	python.exe!1d00116d() 	
 	kernel32.dll!7c816037() 	

Also, this time when I ran the roaming raplh example, for some reason it worked, here is a screenshot of how it looks when I run it:


Well, here is an error message I received when viewing the panda-model with pview:

:display:gsg:glgsg(error): at 3384 of c:\buildslave\sdk-windows-i386\build\panda
\src\glstuff\glGraphicsStateGuardian_src.cxx : invalid enumerant
:display:gsg:glgsg(error): An OpenGL error (invalid enumerant) has occurred.  Se
t gl-check-errors #t in your PRC file to display more information.

Other than the debug message I posted earlier:

:display:gsg:glgsg(debug): HAS EXT WGL_ARB_pixel_format 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_multisample 0
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_create_context 0
:display:gsg:glgsg(debug): GL_VENDOR = Intel
:display:gsg:glgsg(debug): GL_RENDERER = Intel Bear Lake B
:display:gsg:glgsg(debug): GL_VERSION = 1.4.0 - Build 7.14.10.4957
:display:gsg:glgsg(debug): GL_VERSION decoded to: 1.4
:display:gsg:glgsg(debug): HAS EXT GL_ARB_shading_language_100 0
:display:gsg:glgsg(debug): Detected GLSL version: 0.0
:display:gsg:glgsg(debug): Using compatibility profile
:display:gsg:glgsg(debug): GL Extensions:
  GL_3DFX_texture_compression_FXT1       GL_ARB_depth_texture
  GL_ARB_fragment_program                GL_ARB_multitexture
  GL_ARB_point_parameters                GL_ARB_shadow
  GL_ARB_texture_border_clamp            GL_ARB_texture_compression
  GL_ARB_texture_cube_map                GL_ARB_texture_env_add
  GL_ARB_texture_env_combine             GL_ARB_texture_env_crossbar
  GL_ARB_texture_env_dot3                GL_ARB_transpose_matrix
  GL_ARB_vertex_buffer_object            GL_ARB_vertex_program
  GL_ARB_window_pos                      GL_EXT_abgr
  GL_EXT_bgra                            GL_EXT_blend_color
  GL_EXT_blend_func_separate             GL_EXT_blend_minmax
  GL_EXT_blend_subtract                  GL_EXT_clip_volume_hint
  GL_EXT_compiled_vertex_array           GL_EXT_cull_vertex
  GL_EXT_draw_range_elements             GL_EXT_fog_coord
  GL_EXT_multi_draw_arrays               GL_EXT_packed_pixels
  GL_EXT_rescale_normal                  GL_EXT_secondary_color
  GL_EXT_separate_specular_color         GL_EXT_shadow_funcs
  GL_EXT_stencil_two_side                GL_EXT_stencil_wrap
  GL_EXT_texture3D                       GL_EXT_texture_compression_s3tc
  GL_EXT_texture_env_add                 GL_EXT_texture_env_combine
  GL_EXT_texture_filter_anisotropic      GL_EXT_texture_lod_bias
  GL_IBM_texture_mirrored_repeat         GL_NV_blend_square
  GL_NV_texgen_reflection                GL_SGIS_generate_mipmap
  GL_SGIS_texture_edge_clamp             GL_SGIS_texture_lod
  GL_WIN_swap_hint                       WGL_ARB_buffer_region
  WGL_ARB_extensions_string              WGL_ARB_make_current_read
  WGL_ARB_pbuffer                        WGL_ARB_pixel_format
  WGL_EXT_extensions_string              WGL_EXT_swap_control
:display:gsg:glgsg(debug): gl-debug NOT enabled.
:display:gsg:glgsg(debug): HAS EXT GL_KHR_debug 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_debug_output 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_point_sprite 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_ES3_compatibility 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_storage 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_storage 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_clear_texture 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_clear_buffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_array 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_cube_map 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_seamless_cube_map 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_cube_map_array 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_buffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_sRGB 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_sRGB 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_bgra 1
:display:gsg:glgsg(debug): HAS EXT GL_EXT_rescale_normal 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_array_bgra 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_vertex_array_bgra 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_type_10f_11f_11f_rev 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_multisample 0
:display:gsg:glgsg(debug): HAS EXT GL_SGIS_generate_mipmap 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_non_power_of_two 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_framebuffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_packed_depth_stencil 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_shadow 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_fragment_program_shadow 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_env_combine 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_env_crossbar 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_env_dot3 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_buffer_object 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_map_buffer_range 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_buffer_storage 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_array_object 0
:display:gsg:glgsg(debug): HAS EXT GL_OES_vertex_array_object 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_tessellation_shader 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_geometry_shader4 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_geometry_shader4 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_vertex_program 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_fragment_program 1
:display:gsg:glgsg(debug): HAS EXT GL_NV_gpu_program5 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_gpu_program4 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_vertex_program3 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_vertex_program2 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_vertex_program1_1 0
:display:gsg:glgsg(debug): HAS EXT GL_ATI_draw_buffers 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_compute_shader 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_uniform_buffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_instanced_arrays 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_draw_instanced 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_draw_instanced 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_draw_indirect 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_framebuffer_object 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_direct_state_access 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_framebuffer_multisample 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_framebuffer_multisample_coverage 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_framebuffer_blit 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_draw_buffers 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_viewport_array 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_occlusion_query 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_timer_query 0
:display:gsg:glgsg(debug): HAS EXT GL_SGIS_texture_edge_clamp 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_border_clamp 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_texture_mirrored_repeat 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_mirror_clamp 0
:display:gsg:glgsg(debug): max texture dimension = 2048, max 3d texture = 128, m
ax 2d texture array = 0, max cube map = 1024
:display:gsg:glgsg(debug): max_elements_vertices = 1024, max_elements_indices =
1024
:display:gsg:glgsg(debug): vertex buffer objects are supported.
:display:gsg:glgsg(debug): Supported compressed texture formats:
  GL_COMPRESSED_RGB_S3TC_DXT1_EXT
  GL_COMPRESSED_RGBA_S3TC_DXT3_EXT
  GL_COMPRESSED_RGBA_S3TC_DXT5_EXT
  GL_COMPRESSED_RGBA_S3TC_DXT1_EXT
  GL_COMPRESSED_RGB_FXT1_3DFX
  GL_COMPRESSED_RGBA_FXT1_3DFX
:display:gsg:glgsg(debug): HAS EXT GL_EXT_texture_filter_anisotropic 1
:display:gsg:glgsg(debug): HAS EXT GL_ARB_shader_image_load_store 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_shader_image_load_store 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_sampler_objects 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_multi_bind 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_internalformat_query2 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_bindless_texture 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_get_program_binary 0
:display:gsg:glgsg(debug): HAS EXT GL_EXT_stencil_wrap 1
:display:gsg:glgsg(debug): HAS EXT GL_EXT_stencil_two_side 1
:display:gsg:glgsg(debug): max lights = 16
:display:gsg:glgsg(debug): max clip planes = 6
:display:gsg:glgsg(debug): max texture stages = 8
:display:gsg:glgsg(debug): HAS EXT GL_NV_gpu_program5 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_gpu_program4 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_fragment_program2 0
:display:gsg:glgsg(debug): HAS EXT GL_NV_fragment_program 0
:display:gsg:glgsg(debug): HAS EXT GL_ARB_fragment_program 1
:display:gsg:glgsg(debug): Supported Cg profiles:
:display:gsg:glgsg(debug):   arbvp1
:display:gsg:glgsg(debug):   arbfp1
:display:gsg:glgsg(debug): Cg GLSL version = CG_GL_GLSL_DEFAULT
:display:gsg:glgsg(debug): Cg latest vertex profile = arbvp1
:display:gsg:glgsg(debug): Cg latest fragment profile = arbfp1
:display:gsg:glgsg(debug): Cg latest geometry profile = unknown
:display:gsg:glgsg(debug): basic-shaders-only #f
:display:gsg:glgsg(debug): Cg active vertex profile = arbvp1
:display:gsg:glgsg(debug): Cg active fragment profile = arbfp1
:display:gsg:glgsg(debug): Cg active geometry profile = unknown
:display:gsg:glgsg(debug): shader model = 2.0
:display:gsg:glgsg(debug): HAS EXT WGL_EXT_swap_control 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_pbuffer 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_pixel_format 1
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_multisample 0
:display:gsg:glgsg(debug): HAS EXT WGL_ARB_render_texture 0
:display:gsg:glgsg(error): at 3384 of c:\buildslave\sdk-windows-i386\build\panda
\src\glstuff\glGraphicsStateGuardian_src.cxx : invalid enumerant
:display:gsg:glgsg(error): An OpenGL error (invalid enumerant) has occurred.  Se
t gl-check-errors #t in your PRC file to display more information.
:display:gsg:glgsg(debug): loading uncompressed texture panda-model
:display:gsg:glgsg(debug): loading new texture object for panda-model, 1024 x 10
24 x 1, z = 0, mipmaps 1, uses_mipmaps = 1
:display:gsg:glgsg(debug): GLGraphicsStateGuardian 0192B22C destructing
16336 frames in 37.669 seconds.
433.672 fps average (2.30589ms)

I hope all this information helps somehow.

Well, one thing that would help further is getting more information on the error in question. Setting this in Config.prc will provide a more accurate line number for the error message:

gl-check-errors true

What I could further suggest is trying to disable as many OpenGL features as possible, to try and see if it can be narrowed down to a particular feature. You could start by setting the following;

gl-support-clamp-to-border false
gl-ignore-filters true
gl-ignore-mipmaps true
gl-support-rescale-normal false
gl-color-mask false
gl-separate-specular-color false
gl-support-primitive-restart-index false
vertex-buffers false
gl-vertex-array-objects false
driver-generate-mipmaps false

First set all of these; if the issue is gone, you can try commenting them out one by one to see which one is the culprit.

I did as you said, and found that, for the strange way in which models would be rendered as semi-silhouettes, this line solved it:

gl-ignore-filters true

As for the unhandled exception error that would arise with my game and samples like roaming ralph, this line solved it:

gl-ignore-mipmaps true

So the additional lines in the prc file that fixed these two issues are:

gl-check-errors true
gl-ignore-filters true
gl-ignore-mipmaps true

The latter of the three for the silhouettes error and the premium for the unhandled exception error.

There is another strange thing I notice though, when running the roaming ralph demo, if ralph collides with anything, he cannot move anymore. Trying to change the position doesn’t work and it appears like he is stuck, I haven’t yet played with the collision system that comes with v1.10.0, but if this happens to be a persistent error, then I’ll tell you.
(By the way, though I think this might have to do with my old computer and especially the very old video card, the advanced toon shader, distortion, glow filter and render to texture samples all yield unhandled exception errors. Also, the textures I apply to models look a bit pixelated, like in the screenshot below, the area around the blocky model is now very pixelated; it didn’t look like that with v1.8.1…)


Thank you so much for the assistance as usual.

Ah, I’m happy to hear that it resolves the issues! Knowing this, I also managed to figure out the regression that is the likely cause of the issues. I’ll work on a fix and get you a new build soon, so you can test it out. Thanks for your tests!

The textures look pixelated because that’s what gl-ignore-filters does - it tells OpenGL to disable all forms of texture filtering. I hope that when I make a fix, that issue will be resolved.

The sample programs you indicated use advanced shaders and render-to-texture, whereas your card has only extremely basic shader support (not even GLSL shaders, only simple Cg shaders). Render-to-texture is not supported at all on your card. I’m afraid you may be out of luck there. I suppose the sample programs could do a better job at checking whether the required support is present.

I think the issue with Ralph getting stuck is simply an issue in the programming of Roaming Ralph, and not a bug in Panda3D itself.

OK, I’ve made yet another 32-bit build, that should address (hopefully) all of these issues:
buildbot.panda3d.org/downloads/7 … 35bdaf.exe

Please try it out and see if the issues persist. Of course, remove the gl-ignore-mipmaps and gl-ignore-filters settings so that texture filtering can happen properly.

Hello, there was a problem with the power line here so I couldn’t use any electronics until at night…
Anyways, I downloaded and tried the new build without those new lines included in the prc file; the unhandled exception no longer occurs, but the models are still rendered as silhouettes, so that issue still persists.