GLSLHacker Changelog

What's new in GLSLHacker 0.8.5.2

Jun 23, 2015
  • added particle_system_create_fluid_v2() to gh_physx3 (Lua / Python).
  • added do_screenshot_v2() in gh_utils lib (Lua / Python).
  • fixed a bug in params list of gh_utils.do_screenshot() in Python.
  • bug fix: the FreeImage plugin can now handle 4-bit per pixel images.

New in GLSLHacker 0.8.4.0 (May 11, 2015)

  • recoded from scratch vertex buffer related routines in order to unify rendering of meshes, particles and lines.
  • recoded the built-in OBJ loader. Works better and faster.

New in GLSLHacker 0.8.2.2 (Apr 22, 2015)

  • added set_vertex_offsets() to gh_polyline lib (lua/python).
  • fixed a bug in the Python version of gh_polyline.set_line_offsets().
  • fixed the FFmpeg plugin for Raspberry Pi.

New in GLSLHacker 0.8.2.1 (Apr 22, 2015)

  • fixed a minor bug in the Windows version related to script edition during live-coding.
  • added update_alpha_channel_smooth() and update_alpha_channel_binary() to gh_texture lib.

New in GLSLHacker 0.8.2.0 Dev (Mar 26, 2015)

  • added target_platform to gpu_program XML node.
  • updated Raspberry Pi support (OpenGL ES 2.0).

New in GLSLHacker 0.8.1.6 Dev (Feb 25, 2015)

  • fixed a bug the in progress bar management (due to recent changes, the progress bar render thread could not be started and gh_utils.set_progress_bar_caption() was effect-less...).

New in GLSLHacker 0.8.1.5 Dev (Feb 24, 2015)

  • fixed bug in the GPU program management that prevented to render meshes when only custom vertex attribs were allocated.
  • added create_v2(), copy_vertex_data() and copy_face_data() to gh_mesh (lua/python).

New in GLSLHacker 0.8.0.0 Dev (Jan 19, 2015)

  • added new plugin based on FreeType-GL to eaily render true type fonts (all gh_utils.ftgl_xxxxxxx() functions).
  • added support of omni-lights shadow mapping with cube shadow maps (gh_camera.set_orientation_cubemap(), gh_render_target.create_cubemap(), gh_render_target.cubemap_set_draw_face()).
  • added support of user clipping planes (gh_renderer.enable_state() and disable_state()).
  • added get_orientation_euler_angles(), get_absolute_orientation_euler_angles(), get_orientation_vectors(), get_orientation_vector_z(),get_absolute_orientation_vectors() get_absolute_orientation_vector_z() to gh_object lib.
  • updated camera orientation. Now a camera's children are correctly oriented.
  • added copy_transform() to gh_object lib.
  • added detection of OS X 10.10 Yosemite.

New in GLSLHacker 0.7.2.0 Dev (Oct 29, 2014)

  • Improved the FBX plugin (Windows and OS X) for loading Autodesk FBX files.
  • Updated the PhysX 3 plugin (Windows, Linux and OS X) with latest PhysX SDK v3.3.2.
  • Added a new OBJ loader (for testing purposes) and a way to change current OBJ loader with gh_model.set_current_3d_obj_loader(name): ObjLoaderV1" or "ObjLoaderV2". Default is "ObjLoaderV1".

New in GLSLHacker 0.7.1.5 Dev (Oct 11, 2014)

  • updated pixel format support for image2D writing (GL_ARB_shader_image_load_store)
  • PF_U8_RGBA (rgba8 in GLSL) and PF_U8_R (r8 in GLSL) added (gh_texture.image_bind()).

New in GLSLHacker 0.7.1.4 Dev (Oct 10, 2014)

  • improved shader subroutines support with several uniform subroutines per GPU program.
  • improved GPU programs speed (better management of uniform variables).

New in GLSLHacker 0.7.1.3 Dev (Oct 10, 2014)

  • added webcam_get_num() to the gh_utils lib (Lua/Python).
  • improved the management of multiple webcams in the Windows version.

New in GLSLHacker 0.7.1.2 Dev (Oct 10, 2014)

  • bug fix: crash when ZOMBIE scripts are stored in separate file instead of in the XML.
  • added network_message_pop() to gh_utils.

New in GLSLHacker 0.7.0.2 Dev (Aug 6, 2014)

  • added new plugin for Leap Motion device + new gh_leap library (Lua).
  • Lua print() redirected to log file.
  • added create_disc() to gh_mesh lib.
  • added gh_renderer.blending() and gh_renderer.blending_off() to quickly enable/disable color blending.
  • added new openGL queries to gh_renderer.get_capability_4i().
  • improved robustness of the Lua version of gh_utils.trace().

New in GLSLHacker 0.7.0.0 Dev (Jul 5, 2014)

  • fixed a bug with AntTweakBar plugin under Windows with AMD Radeon cards that made the application to crash time to time at the end of a scene.
  • removed all atomic_counter_xxxx() functions from gh_renderer. They are replaced by the low level functions of the gh_gpu_buffer lib.
  • bugfix: the gh_camera.bind() function no longer update the fixed pipeline if OpenGL core profile is used.
  • added OpenGL debug GL_ARB_debug_output support via the gl_debug_profile="1" in the XML window node.
  • added memory_barrier() to gh_renderer lib.
  • added vertices_to_gpu_buffer(), vertices_from_gpu_buffer() and set_vertex_source() to vertex_pool lib.
  • removed all shader_storage_buffer_xxxxx() functions from vertex_pool lib.
  • added set_shader_storage_block_binding() to gh_gpu_program lib.
  • added set_automatic_uniform_state() to gh_object lib.
  • fixed a threading bug in the waitscreen + progress bar when scene contains errors.
  • added gh_gpu_buffer, a new lib for managing GPU buffers in an unified way.
  • added get_uniform_block_size(), get_uniform_block_index() and set_uniform_block_binding() to gh_gpu_program lib.
  • removed all ub_xxx() functions from gh_gpu_program lib.

New in GLSLHacker 0.6.4.2 Dev (May 21, 2014)

  • added emitter_set_spawn_positions() to gh_ps module.
  • added back_face_culling() and front_face_culling() to gh_renderer.
  • added box_create(), box_update_size() and sphere_create() to gh_utils.
  • added update_bounding_volume(), get_bounding_box_size(), get_bounding_sphere_center(), get_bounding_sphere_radius(), get_global_bounding_box_size(), get_global_bounding_sphere_center(), get_global_bounding_sphere_radius() to gh_object.

New in GLSLHacker 0.6.4.1 Dev (May 16, 2014)

  • added OpenGL 4.0 shader subroutines support (gh_gpu_program.set_uniform_subroutine()).
  • added get_capability_4i() to gh_renderer.
  • added create_pqtorus() to gh_mesh.
  • added actor_add_force(), actor_add_force_at_position() and actor_set_kinematic_target() to gh_physx3 lib (lua/python).
  • fixed a bug in AntTweakBar functions when the AntTweakBar plugin is not loaded.
  • added set_simulation_scales() to gh_physx3 lib (lua/python).

New in GLSLHacker 0.6.3.19 Dev (May 9, 2014)

  • the PhysX plugin is now available for the Linux version.
  • fixed a minor bug in the cloth module of PhysX3 plugin.

New in GLSLHacker 0.6.3.13 Dev (Mar 28, 2014)

  • bug fix: in font bitmap rendering with OpenGL 2 (built-in vertex attribs vs generic vertex attribs).
  • This bug was only visible under OS X with a NVIDIA GPU.

New in GLSLHacker 0.6.0.1 (Nov 1, 2013)

  • fixed a bug in the OS X version when an OpenGL 4.0 context was required.

New in GLSLHacker 0.6.0 (Nov 1, 2013)

  • added a libs/ folder into GLSL Hacker root directory with Lua and Python high level librairies used by demos.
  • added OS X 10.9 Mavericks support.
  • updated version number, four numbers are now used: major.minor.patch.build.
  • added keyboard support for Linux.
  • added get_platform_name() to gh_utils lib.
  • added set_orientation() and get_orientation() to gh_object lib.
  • added set_vertices_color() to gh_mesh lib.
  • fixed a bug with bitmap fonts and OpenGL 2 context.
  • Windows and OS X version: added keyboard shortcuts for loading a scene (Ctrl+O), reloading a scene (Ctrl+R) and for displaying the log file (Ctrl+L).
  • the position of the main 3d window is stored in the conf.xml file and is used for the next launch.
  • added get_host_app_dir(), get_scripting_libs_dir() and get_command_line() to gh_utils lib.
  • improved the error handling (traces, exit at first syntax/runtime error).
  • fixed bugs in the loading of scripts and gpu programs from files (xml). Now the filename attribute of gpu_program and scripts xml modes works correctly.
  • added a configuration file (conf.xml).
  • Windows version: GLSL Hacker plugins are now stored in the plugins/ folder.
  • updated arguments of gh_utils.font_bm_create() function.
  • added get_physx_version() to gh_physx3 lib.
  • added set_render_state() and get_render_state() to gh_node lib.
  • added tripod_visualizer_object_render() and tripod_visualizer_camera_render() to gh_utils lib (for GL2 and GL3+).
  • removed tripod_visualizer_render() from gh_utils lib.
  • added create_cylinder() and create_ellipse() to gh_mesh lib.
  • added new command line param: /noload_plugin_physx3
  • added new command line param: /noload_plugin_fbx
  • updated gh_utils.font_bm_update() with a new parameter: mapped_gpu_memory.
  • added Autodesk FBX support (via a plugin) with create_from_file_loader_fbx() to gh_model lib.
  • added flip_vertex_normals() to gh_object lib.
  • added OpenGL 4.2 atomic counters support: atomic_counter_create_buffer(), atomic_counter_kill_buffer(), atomic_counter_buffer_bind(), atomic_counter_set_value() and atomic_counter_get_value() added to gh_renderer lib.
  • added particle system lib (gh_ps) to Lua/Python API.
  • fixed a bug in gh_utils.tripod_visualizer_render() with OpenGL 2 context.
  • added create_terrain() to gh_mesh lib.
  • added scale_vertices_position() to gh_object lib (for mesh).
  • added set_depth_buffer_writing_state() to gh_renderer.
  • added set_vertex_position_w() to gh_mesh lib. Useful with PhysX clothes.
  • added set_pitch(), set_yaw() and set_roll() to gh_camera lib.
  • added get_position(), get_view_vector() and get_up_vector() to gh_camera lib.
  • added w param in gh_camera.set_lookat().
  • added support of PhysX 3.3 SDK (via a plugin) in Lua and Python: gh_physx3 lib.
  • bugfix in OBJ object loader.