GLSL Hacker Changelog
Version 0.8.5.2 - 2015.06.22 ---------------------------- + 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. * bugfix: the FreeImage plugin can now handle 4-bit per pixel images. * bugfix: on Windows, the live coding no longer disturbate the main 3D scene keybord buffer. In previous versions, the camera could be moved with arrow keys even if the live coding box had the focus. ! live coding is disabled by default on Windows version. The checkbox is still there to enable live-coding on each script/glsl editor. Version 0.8.5.1 - 2015.05.15 ---------------------------- + added new keys to keyboard management (all keys of numeric keypad) on Windows. Version 0.8.5.0 - 2015.05.14 ---------------------------- + added luasocket lib. + added experiemtal Spout plugin. Version 0.8.4.0 - 2015.05.08 ---------------------------- ! 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. * fixed a bug in keyboard management on Linux. Version 0.8.3.4 - 2015.04.29 ---------------------------- + added get_vertex_size() in gh_utils (lua/python). + added reset_vertex_attribs_name_and_loc() and set_vertex_attrib_name_and_loc() to gh_gpu_program (lua). ! gh_mesh.set_user_vertex_attrib() and gh_mesh.get_user_vertex_attrib() replaced by gh_mesh.set_vertex_attrib_element() and gh_mesh.get_vertex_attrib_element(). - removed gh_mesh.copy_std_attrib_to_user_attrib() and gh_mesh.assign_user_vertex_attrib_name_and_location(). * fixed a bug related to gh_mesh.set_vertex_alloc_params(). The vertex alloc params was not re-initialized at scene init. * fixed a bug related to vertex attribute location when the same mesh is rendered with different GPU programs. + added assign_user_attrib_vertex_shader_index() to gh_mesh (lua). + added actor_set_kinematic_target_transform() to gh_physx3 lib (lua). + added get_shader_info_log() and get_info_log() to gh_gpu_program lib (python / lua). ! updated FFmpeg plugin with latest SDK v2.6.2 ! updated FreeImage plugin with latest SDK v3.17.0 Version 0.8.3.3 - 2015.04.24 ---------------------------- + added joint_set_motor_params() to gh_physx3 lib (python / lua). Version 0.8.3.2 - 2015.04.21 ---------------------------- + added /rpi_disable_inputs command line option to the Raspberry Pi version to fully disable input management (keyboard and mouse). ! improved a bit global stability. * fixed a bug in the GPU program live coding module on Windows platform. * fixed gh_physx3.joint_distance_set_spring(). Now spring effect of distance joints works. + added gh_av lib to Python plugin. + added reset_streams() to gh_av. Version 0.8.3.1 - 2015.04.11 ---------------------------- + added run_simulation_step() and fetch_results() to gh_physx lib (lua/python). Version 0.8.3.0 - 2015.04.03 ---------------------------- + added new audio/video lib based on FFmpeg: gh_av (Lua only for the moment). + added mouse capture support in the Windows version. Version 0.8.2.2 - 2015.03.27 ---------------------------- + 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. Version 0.8.2.1 - 2015.03.23 ---------------------------- * 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. Version 0.8.2.0 - 2015.03.18 ---------------------------- + added target_platform to gpu_program XML node. + updated Raspberry Pi support (OpenGL ES 2.0). Version 0.8.1.7 - 2015.02.25 ---------------------------- + added command line param (/gl_core_profile=1|0) to force the OpenGL core profile for GL3.2+ contexts. ! updated: the menur bar in the FREE version can be hidden. Version 0.8.1.6 - 2015.02.24 ---------------------------- * 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 effectless...). Version 0.8.1.5 - 2015.02.23 ---------------------------- * 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). Version 0.8.1.4 - 2015.02.21 ---------------------------- ! updated gh_render_target.resolve_multisampling_v2() parameters. ! updated enable_state() and disable_state() of gh_renderer lib with new states. + added msaa() to gh_renderer (lua/python). + added msaa attribut in the scene XML node to enable multi sampling anti aliasing per window (in prev versions, the msaa was enabled with the command line). + added enable_gpu_bugfixes() to gh_renderer (Lua only for testing purposes). * bugfix: in some conditions, the gh_camera.bind() function updated (again...) the fixed pipeline when OpenGL core profile (OpenGL 3.2+) was used. Version 0.8.1.3 - 2015.02.20 ---------------------------- * fixed a bug in render target resolve multisampling when multiple colors buffers (attachments) are used. + added create_rb_v2() and resolve_multisampling_v2() to gh_render_target lib (lua/python). Version 0.8.1.2 - 2015.02.16 ---------------------------- * fixed a bug in the progress bar module when single threaded mode is selected (separate_render_thread="0" in the window xml node). + added set_vertex_alloc_params() and copy_std_attrib_to_user_attrib() to gh_mesh (lua/python). - removed alloc_user_vertex_attribs() from gh_mesh. + improved the support of threaded scripts (Lua). * fixed a multithreaded issue that could lead to a crash related to the creation of 3D windows. + improved code robustness. (DEV NOTE: singletons are now thread safe) + added osx_syphon_enabled attribute to XML scene node. Version 0.8.1.0 - 2015.01.05 ---------------------------- + added TIMER type to XML script node (currently only on Windows). ! PhysX 3 plugin: added a check of the PhysX version. + added ftgl_font_add_text3d() to gh_utils (Lua / Python). * fixed bugs in gh_camera (ortho camera) and gh_utils (ftgl and raycast_cast_ray) libs (Python plugin). * fixed a bug in mouse wheel reading on Windows that disturbed the mouse position. ! write of OpenGL extensions in the log file disadled. To write extensions, use the /glinfo command line option. ! internal TCP/IP server for remote live coding is now disabled by default. To start it you can use the /start_tcpip_server command line option. * fixed a typo in the GTX 970M entry of the GPU database of the GPU monitoring plugin. + added binary scene import (all versions). + added binary scene export (PRO version) + added support of binary XML texture nodes (PRO version) Version 0.8.0.6 - 2014.12.26 ---------------------------- + added set of functions to manage camera frustum culling: gh_camera.frustum_xxxx(). + added bounding_volume_update() to gh_object. + added box_update_size_from_bv() and sphere_update_radius_from_bv() to gh_utils. + added create_action_gravity() and action_add_size() to gh_ps (particle system) lib. + added gpu_uniform2f(), gpu_uniform3f() and gpu_uniform4f() to gh_gpu_program lib (Lua / Python) + added gpu_uniform2i(), gpu_uniform3i() and gpu_uniform4i() to gh_gpu_program lib (Lua / Python) + added a warning in the log file if there are more than one root node in the main xml file. Version 0.8.0.5 - 2014.12.04 ---------------------------- ! full rebuild with all plugins. Version 0.8.0.4 - 2014.12.03 ---------------------------- + added translate_vertices_position to gh_object lib (Lua/Python). + added rotate_vertices() and rotate_vertices_euler_xyz() to gh_object lib (Lua/Python). + added write_to_file_v3() gh_texture lib (Lua / Python). * bug fixed in gh_texture.write_to_file_v2() when pixel format was U8_RGBA. + added create_2d_from_rt() to gh_texture (Lua / Python). + added sys_exec() to gh_utils ((Lua / Python) + Windows only). ! updated the 3d framework. Version 0.8.0.3 - 2014.11.18 ---------------------------- + added set_transform_order() to gh_object lib (Lua / Python). Version 0.8.0.2 - 2014.11.11 ---------------------------- + added create_from_memory() to gh_texture lib (Lua / Python). Version 0.8.0.1 - 2014.11.06 ---------------------------- + added create_v2() to gh_polyline lib (lua). + added get_date_str() to gh_utils lib (lua / Windows only). Version 0.8.0.0 - 2014.11.03 ---------------------------- + added new plugin based on FreeType-GL to easily 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. Version 0.7.2.0 - 2014.10.17 ---------------------------- ! 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". Version 0.7.1.5 - 2014.10.10 ---------------------------- ! 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()). Version 0.7.1.4 - 2014.10.10 ---------------------------- ! improved shader subroutines support with several uniform subroutines per GPU program. ! improved GPU programs speed (better management of uniform variables). Version 0.7.1.3 - 2014.10.05 ---------------------------- + added webcam_get_num() to the gh_utils lib (Lua/Python). ! improved the management of multiple webcams in the Windows version. Version 0.7.1.2 - 2014.10.04 ---------------------------- * bugfix: crash when ZOMBIE scripts are stored in separate file instead of in the XML. + added network_message_pop() to gh_utils. Version 0.7.1.1 - 2014.09.29 ---------------------------- ! updated network script updater (v0.2.0, Windows and OSX) with live coding checkbox and execute button. ! fixed some bugs and improved the live coding in the Windows version. + added auto-save of scripts and shaders if necessary (read: they have been modified). + added a button in script and shader editors to save the code source in the scripts/ or shaders/ folder of GLSL Hacker (Windows version only). * script and shaders errors are now correctly redirected to the output window. + added an option to disable live coding in script and shader editing windows (Windows version only). * fixed some potential crashes in gh_utils functions that take strings as parameters (like font_render() or font_render_3d(). ! updated the dialog box / output window for the traces (Windows version only). + added circle_create(), circle_update_radius(), line_create(), line_set_start_position(), line_set_end_position(), line_set_start_color() and line_set_end_color() to gh_utils lib. ! updated the Lua immediate mode: now the Lua state of the first script is used (not the case so far!). * improved the GPU monitoring plugin when running on NVIDIA Optimus systems. + added gh_leap (Leap Motion) library in the Python plugin. + updated Python plugin: gh_renderer.get_capability_4i(), gh_renderer.query_xxxx() (GL_ARB_pipeline_statistics_query GL4.5), gh_utils... Version 0.7.0.3 - 2014.08.28 ----------------------------- + added a set of functions (gh_renderer.query_xxxx()) for GL_ARB_pipeline_statistics_query (OpenGL 4.5). * GPU monitoring plugin: added GeForce GTX 745, GT 720, GTX 700M series, GT 700M series, 800M series and GTX 800M series. * GPU monitoring plugin: updated with latest NVAPI R340. * bugfix: the menubar is no longer displayed in fullscreen mode (Windows version). + added set_orientation_cubemap() to gh_camera lib. Version 0.7.0.2 - 2014.07.23 ----------------------------- + added new plugin for Leap Motion device + new gh_leap library (Lua). + re-enabled log dialog box (Windows version) in Tools > Show log dialog box. + 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() (Lua only). ! improved robustness of the Lua version of gh_utils.trace(). Version 0.7.0.0 - 2014.06.21 ----------------------------- * 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. Version 0.6.4.5 - 2014.06.08 ----------------------------- + added support of transparent windows (alpha value) in OS X version. + added drag and drop support in the OS X version. ! OSX version: now GLSL Hacker stores the last position of the window and uses it for the next launch (useful with the drag and drop). + added FreeImage plugin support in the OS X version. + added a set of functions to manage custom dynamic libraries: gh_utils.dylib_xxx(). Thanks to these functions, you can use GLSL Hacker as a super window manager and code your own 3D routines in the dynamic lib in C/C++. Version 0.6.4.4 - 2014.06.04 ----------------------------- ! updated the OpenGL context creation under Windows and Linux for when the required major version is 2. + added create_ex_v3() to gh_render_target lib. + added uniform_camera_matrices() and uniform_object_matrix() to gh_gpu_program lib. Version 0.6.4.3 - 2014.05.28 ----------------------------- * fixed a bug in gh_mesh.set_vertices_color() in Lua. + added set_vertices_color() to gh_mesh in Python. + added mouse_get_wheel_delta() to gh_input lib. + added new keyboard keys support (shift, ctrl, alt and windows key). + added keyboard_codes.lua in GLSL Hacker Lua libs folder. + added FreeImage plugin with floating point (96 and 128-bit) support. + added set_current_image_codec_name() to gh_texture module. Version 0.6.4.2 - 2014.05.19 ----------------------------- + 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. Version 0.6.4.1 - 2014.05.15 ----------------------------- + 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). Version 0.6.3.19 - 2014.05.08 ----------------------------- + the PhysX plugin is now available for the Linux version. * fixed a minor bug in the cloth module of PhysX3 plugin. Version 0.6.3.18 - 2014.05.06 ----------------------------- * fixed GLSL live coding bug for OpenGL 3+ shaders. * fixed a bug in gh_physx3.apply_actor_transform(). Only the transformation matrix was updated. Now position and orientation of the object are properly updated as well. - added grid_xxxxxxx() functions to gh_utils to manage reference grids (lua/python). - PhysX 3 plugin updated with latest PhysX SDK v3.3.1 Version 0.6.3.17 - 2014.04.23 ---------------------------- - added create_persp_v2() and create_persp_v3() to gh_camera (lua/python). - added open_url() to gh_utils (lua/python). - fixed a bug in gh_object.get_absolute_position(). - added get_distance() to gh_object lib to get the distance between two objects (lua/python). - added delay_before_swap_nv() to gh_renderer lib for Windows and Linux versions - updated gh_audio.sound_create() with streaming option. - minor changes in existing plugins - added math_length_vec3() to gh_utils (lua/python). Version 0.6.3.16 - 2014.04.01 ---------------------------- - added create_from_file_v3() to gh_texture lib (lua/python) for the support of compressed textures. - added get_gpu_memory_size() to gh_texture lib (lua/python). - added inject_opacity_map() to gh_texture lib (lua/python). - added create_plane_v3() to gh_mesh lib (lua/python) to create a mesh plane with an initial orientation applied to vertices. - bugfix: workaround added in gh_render_target.resolve_multisampling() for Radeon GPUs under Mac OSX (the depth buffer is no longer processed). Version 0.6.3.15 - 2014.03.17 ---------------------------- - added set_orientation_v2() to gh_object lib to set the orientation of an object from two direction vectors. - added FMOD-based audio plugin with new host-api lib: gh_audio (lua/python). Version 0.6.3.14 - 2014.03.06 ---------------------------- - added support of shared variables between scripts in different threads or in different languages (Lua - Python). - updated and improved management of Lua states in multithreaded env (ZOMBIE scripts, multiple 3D windows). - added "resizable" attribute in xml scene node. - improved scripting error detection. The demo is stopped at the first error detected. - added new functions to gh_model lib to load 3D objects with vertex alloc params. - updated GPU detection code in GPU monitoring for Mac OS X. - updated GPU monitoring plugin with temperature graph when GPU temperature reading is available. - added mouse_show_cursor() to gh_input lib (works with Windows only). Version 0.6.3.13 - 2014.02.13 ---------------------------- - bugfix: 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. Version 0.6.3.12 - 2014.02.04 ---------------------------- - bugfix: in 2D font bitmap rendering with OpenGL 2. Version 0.6.3.11 - 2014.01.28 ---------------------------- - bugfix: crash in gh_renderer.set_scissor() Lua version. Version 0.6.3.10 - 2014.01.27 ---------------------------- - bugfix: Lua live coding fixed. Version 0.6.3.9 - 2014.01.24 ---------------------------- - added multiple render targets suppport. Version 0.6.3.8 - 2014.01.24 ---------------------------- - added OpenGL 4.4 bindless texture support and uniform buffer object for passing array of bindless textures to a shader stage. - added new functions for passing GLSL uniforms (uniform_1ui64v(), uniform_1ui64(), uniform_1/2/3/4d...) to gh_gpu_program (Lua). - added platform information in the benchmark scores file. - Linux: fixed segmentation fault when the demo initialization fails. - Linux: the console output (with /console_output command line option) is fixed. - added support of user vertex attribs: alloc_user_vertex_attribs(), set_user_vertex_attrib() and get_user_vertex_attrib() added to gh_mesh lib. - added new GPU monitor plugin and associated host API function: gh_gpumon (Lua). The gh_gml lua/python module is now based on this GPU monitor plugin. - added quad wireframe rendering option for some built-in meshes (plane, sphere, torus, cylinder). - plugin management improved. - updated with gxl3d 0.8.x branch. Version 0.6.3.7 - 2014.01.11 ---------------------------- - moved all video player functions based on FFmpeg to a separate plugin (plugin_gxl3d_video_ffmpeg_x64.dll). Version 0.6.3.6 - 2013.12.24 ---------------------------- - added write_to_file_v2() to gh_texture lib. - added flip_vertical() to to gh_texture lib. Version 0.6.3.5 - 2013.12.18 ---------------------------- - added set_instance_color() and set_instance_scale() to gh_mesh. Version 0.6.3.4 - 2013.12.10 ---------------------------- - updated tinyxml2 in gxl library. - fixed bugs in cross-platform compilation for ffmpeg and anttweakbar support. Version 0.6.3.3 - 2013.12.06 ---------------------------- - added uniform1fv(), uniform2fv(), uniform3fv() and uniform4fv() to gh_gpu_program (Lua). - added video support in gh_texture lib (gh_texture.video_xxxxx() functions). Video support is based on ffmpeg. Version 0.6.3.2 - 2013.11.30 ---------------------------- - added get_version() to gh_utils lib. - added anttweakbar support (Windows version only) with a set of functions (twbar_xxx) in gh_utils lib. Version 0.6.3.1 - 2013.11.20 ---------------------------- - added webcam support for Windows version with a set of functions (webcam_xxx) in gh_utils lib. Version 0.6.3.0 - 2013.11.15 ---------------------------- - added raycast_get_ray() and raycast_cast_ray() to gh_utils lib. Version 0.6.2.3 - 2013.11.08 ---------------------------- - fixed a minor bug related to texture pixmap update (gh_texture.set_texel_2d). Version 0.6.2.2 - 2013.11.06 ---------------------------- - Internal changes in source code. Version 0.6.2.1 - 2013.11.05 ---------------------------- - added set_virtual_screen() and update_virtual_screen() to gh_renderer lib for OS X version. Version 0.6.2.0 - 2013.11.04 ---------------------------- - added get_virtual_screen() and get_num_virtual_screens() to gh_renderer lib for OS X version. - minor changes in the loading of init0.xml and conf.xml - Internal update: latest tinyxml2 1.0.12 Version 0.6.1.0 - 2013.10.27 ---------------------------- - updated Python plugin with missing functions in gh_object lib: scale_vertices_position(), flip_faces(), flip_vertex_normals(). - added set_vertices_color() to gh_object lib (Python / Lua). - fixed a bug in the FBX loader (vertices color). Version 0.6.0.1 - 2013.10.31 ---------------------------- - fixed a bug in the OS X version when an OpenGL 4.0 context was required. Version 0.6.0.0 - 2013.10.25 ---------------------------- - 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. Version 0.5.0 - 2013.05.09 -------------------------- - fixed bugs in resource freeing (material/textures). - added tripod_visualizer_render() to gh_utils. This tripod can be displayed in GL2 and GL3+ core profile. - added support of shader storage buffer for compute shaders in gh_vertex_pool. - added new command line param: /noload_plugin_opencl - added new command line param: /noload_plugin_python27 - added new command line param: /disable_opengl_support_check - fixed a memory leak in texture destruction. - added get_platform() to gh_utils lib. - added uniform2i(), uniform3i() and uniform4i() to gh_gpu_program. - added uniform4i_array() and uniform4f_array() to gh_gpu_program. - added Python 2.7.3 plugin for scripting. - updated lua engine to Lua 5.2.2 - added set_texel_1d(), set_texel_2d() to gh_texture lib. - added renderer_update() to gh_texture lib. - added cubemap support with gh_texture.create_cube_from_file() function. - added gh_texture.create_1d() - renamed gh_texture.create() in gh_texture.create_2d() - added get_gpu_memory_usage_kb_amd() to gh_renderer lib. - Added TERMINATE scripts. - Buffer object usages can be forced either by scripting or by command line. - Added force_buffer_object_usage() to gh_renderer lib. - Added timer_reset() and timer_get_milliseconds() to gh_window lib. - Added update_built_in_uniforms() to gh_object lib. - Added font_bm_create(), font_bm_get_charset_texture(), font_bm_draw_text_2d(), font_bm_draw_reset() and font_bm_render() to gh_utils. - Added new functions into gh_utils to manage a simple spline: spline_create(), spline_add_keyframe(), spline_get_value(). - Added create_rb(), clear_color_buffer() and clear_depth_buffer() to gh_render_target. - Added rasterizer_set_msaa_state() to gh_renderer. - Added do_linear_tweening() to gh_mesh lib. - Added alloc_mesh_data(), set_face_indexes() and get_face_indexes() to gh_mesh. - Added set_gpu_program(), get_gpu_program(), add_texture() and remove_texture() to gh_material lib. - Added get_num_materials(), get_material(), add_material(), remove_material() and remove_all_materials() to gh_object. - Added set_materials_texture_unit_offset() to gh_object. - Added compute_faces_normal() and compute_vertices_normal() to gh_object. - Added set_sampler_params() to gh_texture lib. - Added gl_core_profile and sw_renderer attributes to window xml node. - Added set_vertex_position(), set_vertex_color(), get_vertex_color(), set_vertex_normal(), get_vertex_normal(), set_vertex_tangent(), get_vertex_tangent(), set_vertex_uv() and get_vertex_uv() to gh_mesh lib. - Added set_vertex_attrib_name() and get_vertex_attrib_name() to gh_gpu_program lib. - Added update_vertex_attrib_location() to gh_object lib. - Removed update_vertex_attrib_location() from gh_mesh lib. - Added create_depth() and create_depth_rect() to gh_render_target lib. - Added get_num_gpus_amd() and get_gpu_memory_total_available_kb_amd() to gh_renderer lib. - Added get_gpu_memory_total_available_kb_nv(), get_gpu_memory_current_available_kb_nv() and get_gpu_memory_usage_kb_nv() to gh_renderer lib. - Added gh_opencl lib. This first version allows to retrieve OpenCL information about platforms and devices. - Added gh_gml lib. gh_gml is the scripting wrapper around GML (GPU Monitoring Lib). GML is currently available on Windows only and is limited to NVIDIA GPUs. AMD GPUs will be supported shortly. - Added map_vb(), unmap_vb(), vb_set_vertex_position(), vb_set_vertex_position_ptr(), vb_set_vertex_color() and vb_set_vertex_color_ptr() to gh_vertex_pool lib. - Added create_box() to gh_mesh lib. - Added set_instance_axis_angle() to gh_mesh lib. - Added polyline support: gh_polyline lib. - Added resize() to gh_render_target lib. - Added use_with_syphon() to gh_render_target lib to use a render target with Syphon. - Added Syphon support to the OSX version. MAD Hacker --------------- - Added luamidi lib. - Added use_with_syphon() to gh_render_target lib to use a render target with Syphon. - Added Syphon support to the OSX version. Version 0.4.0 - 2013.01.18 -------------------------- - First public release. - Many changes compared to v0.3.2 (for example ID is no longer used in Lua and Python scripting). Version 0.3.2 - 2012.10.18 -------------------------- - Fixed a 32/64-bit bug in GXL3D module. Version 0.3.1 - 2012.09.24 -------------------------- - Added: /x_window_name command lien param (for X11-based apps only). - Fixed a bug in scripting live coding. Version 0.3.0 - 2012.09.10 -------------------------- - Minor changes in the gxl engine for the Python plugin - Plugin Python 2.7 32/64-bit added. Version 0.2.2 - 2012.09.06 -------------------------- - Added: get_vertex_position(), get_vertex_position_ptr(), get_vertex_absolute_position() and get_vertex_absolute_position_ptr() to gh_mesh lib. - Added: get_num_vertices(), get_num_vertices_ptr(), get_num_faces() and get_num_faces_ptr() to gh_object lib. - Added: get_absolute_position() and get_absolute_position_ptr() to gh_object lib. - Added: font_render3d() and font_render3d_ptr() to gh_utils lib. - Added: set_grid_params(), set_grid_params_ptr(), display_grid(), display_grid_ptr(), set_display_grid_state() and set_display_grid_state_ptr() to gh_object lib. - Added: set_tripod_size() and set_tripod_size_ptr() to gh_object lib. Version 0.2.1 - 2012.09.04 -------------------------- - Change: if erros are detected in an INIT script, all scripts are disabled and a red screen is displayed. - Added: command line parameter /boxes_transparency= 2013-2015 Geeks3D. All Rights Reserved. .:- G3D Network -:. |