test_cg_shader.py 842 B

12345678910111213141516171819202122232425262728
  1. import os
  2. from panda3d import core
  3. SHADERS_DIR = core.Filename.from_os_specific(os.path.dirname(__file__))
  4. def run_cg_compile_check(gsg, shader_path, expect_fail=False):
  5. """Compile supplied Cg shader path and check for errors"""
  6. shader = core.Shader.load(shader_path, core.Shader.SL_Cg)
  7. # assert shader.is_prepared(gsg.prepared_objects)
  8. if expect_fail:
  9. assert shader is None
  10. else:
  11. assert shader is not None
  12. def test_cg_compile_error(gsg):
  13. """Test getting compile errors from bad Cg shaders"""
  14. shader_path = core.Filename(SHADERS_DIR, 'cg_bad.sha')
  15. run_cg_compile_check(gsg, shader_path, expect_fail=True)
  16. def test_cg_from_file(gsg):
  17. """Test compiling Cg shaders from files"""
  18. shader_path = core.Filename(SHADERS_DIR, 'cg_simple.sha')
  19. run_cg_compile_check(gsg, shader_path)