Panda3D 1.5.4 released

Hi all,

Panda3D 1.5.4 has just been released. This is a bugfix-only release, the stable release of the 1.5 branch. Here’s what changed:

  • Fixes packpanda crash
  • Linux build accidentally got configured for OpenAL
  • EggTexture now writes wrap modes and types correctly.
  • Fixes an occasional crash in TextureAttrib
  • DirectEntry no longer crashes when moving cursor in a full box
  • Several bugs in RigidBodyCombiner fixed
  • Normals generated by GeoMipTerrain are now correct
  • Bugs fixed in DirectGrid
  • Linux users can now use WindowProperties.setParentWindow
  • Fmod now compiles on 64-bits
  • Fixed several bugs in the API reference generator
  • EggNurbsSurface is now exposed to Python
  • Fixes a bug in PGButton
  • GeoMipTerrain set_heightfield fixed
  • Several bugs in the Max exporter:
    • Now generates binormals and tangents
    • Pview output fixed
    • Overwrite confirmation fixed
    • Export type ‘Both’ now works correctly
  • Several other bugs not listed above.

Let us know if you encounter any bugs. :slight_smile:

Great! And I found something strange:

  1. the "stop and play from current frame animation"
    seem still strange in 1.5.4

  2. the font:
    It worked in 1.5.3, but in 1.5.4, the text become some unreadable symbol, and the error message show up in colsole:
    :text(warning): No definition in AR PL New Sung Reguler for character 154

“AR PL New Sung” is the name of a traditional chinese font.
the font could be found in


  1. Sorry, I didn’t tag this fix for 1.5.4. It will instead be part of the 1.6 branch, to be released at some time in the future. (The fix was complicated enough I didn’t want to risk breaking the 1.5.4 branch without much additional testing.)

  2. Unicode symbol 154, or U+009a hex, isn’t a common symbol to find in text strings, in English text or in Chinese text, so it’s not surprising that it’s not in your font. (See How did this character get into your text string? Is it possible that your input is garbled, or was incorrectly converted from utf-8 or some such? In any case, it doesn’t seem likely that this is a problem with Panda 1.5.4 per se; perhaps something else has changed in your application at the same time.


I just use it like a on screen text:

bk_text = "這是我的測試"   #(It means "This is my test")
textObject = OnscreenText(text = bk_text, pos = (0.95,0.95)

I don’t know why it works in 1.5.3, but in 1.5.4, I have type a"u" in front of every non-english string:

bk_text = u"這是我的測試"
textObject = OnscreenText(text = bk_text, pos = (0.95,0.95)

It is a very common encoding situation, I thought Panda3D did some tweak about it :stuck_out_tongue: ,so I didn’t to think too much about it. people say unicode will be easy in python3.0.
anyway, it’s my bad.

u"xxx" is a very different thing from “xxx”.

In general, encoding will always be a hard thing, because there are lots of very different ways to express similar things. Until all of these different ways fall away and we only have one way to express a particular string, there will be ambiguity, and we humans will make stupid mistakes and things will come out wrong. I don’t think Python 3.0 will change any of that. :slight_smile: