Leadwerks Engine 0.2.8 - friendlier, easier, more
Miscellaneous Forums/General Discussion/Leadwerks Engine 0.2.8 - friendlier, easier, more
Run FPSControls.bat:
http://www.leadwerks.com/files/engine0.2.8.zipThis release is more similar to what I envision as the final product. This isn't so much a pimpage demo, but more an example to show artists and programmers how everything works.
Script Editor
A pretty complete script editor with syntax highlighting lets you edit your code and launch the engine. The editor will keep control of the launched process, so you can terminate execution at any time. Error feedback has not yet been implemented.
Physics
Physical objects are now very easy to create in the editor. Place a model in 3DWorldStudio and add a property "phybox=1" or "phycyl=1". You can adjust the mass (default mass is 10) by adding a "mass" property. Use "mass=0" for a non-movable object. The engine will automatically calculate the model offset and center of gravity, even if the model pivot isn't in the center. Add a property "shadow=1" to make any object cast a dynamic shadow.
Script
I've added a lot of commands, including some basic player commands. The demo included shows how to implement controls with both WASD and the arrow keys, as an alternative/secondary key. Open engine.bcs in notepad to see the syntax for all available commands.
Assets
All models have been textured and sized correctly, and will be created with their default texture applied. If you get a chance to look at these in 3D World Studio, you'll appreciate how well-made they all are.

Sorry, I forgot to include a required file. I fixed it and posted a new download, same link.
Oooh.
Wow. Incredible.
Are you working on HL3?
Your engine is one of the best piece of software I've seen!
I'm not going to use this, as I have no interest in creating an fps, but can i say: Well Done ! It sure has come a long way since those early B3d days.
Great work Josh. Script editor is very nice, but having tabs to switch between different scripts would be cool.
I have no interest in creating an fps
Nor me (totally sick of FPS), but this engine could easily be used for games other than shooters. Granted, you'd be restricted to either a first or third person view, but that's true of all 3D games!
..well..Once completed, let me know and I'll buy it..thats for sure..man syntax is almost B3D! I love it..I'm really looking seriously on to this..
It's astouding to see how much this has come along, and the amount of work that must have gone into it. It's been a long time, but the quality is simply amazing!
It certainly seems very easy to use, and more importantly, to understand what's what.
no openal here and your link to openal.zip is down
Thanks for the compliments.
I need to contact Creative and figure out how to tell whether OpenAL is installed or not.
You could use the engine for whatever type of game you want. In the script, you can see that the camera is just manually positioned to match the player.
It's three billion years in the making, but congrats Halo. Runs and looks great.
Very nice release.
But I'm a wrong or is it incapable of exclusive fullscreen?
Because on startup I get the well known overlay flicker (I've ObjectDock) which only happens if 3d apps start windowed fullscreen mode instead of exclusive.
As well, for some reason it seems like the performance dropped seriously since .24 (I get like 40-100 FPS on 1680x1050 on my 7600, 2x2Ghz CoreDuo, so not a that stunning result ... I get the 40 - 50 FPS with Counter Strike Source and everything but HDR active on that resultion and thats more than a room with a few objects ...)
You can change the display mode by editing startup.script. Change the last parameter in the Graphics() command from 2 to 0 to start it in fullscreen.
Dreamora, my guess is your rig is fillrate-limited. I started using a shader on the engine-created materials (where no material file is present) so that all surfaces will work with dynamic lights. You're running at a very high resolution, so it would make sense that would slow down the card a little if a fragment shader is being used.
I would like to know when you are planing to make release this system??
Thats exactly what I did, changing 2 to 0.
Hmm, 7600 shouldn't be that fillrate limited that it breaks down that far, its 128Bit buswidth, 256MB VRAM, so if simple, non parallax nonbump materials is killing the performance that badly, I would say that there is more in the pipe breaking the performance, not just a fillrate issue.
I only get like 200 FPS with the default 800x600 as well, which is quite disappointing for a room with 2 barrels, a few bricks and no demanding shader effects active at all.
Its a very nice engine none the less, .24 and previous (haven' tested .26 and .27) showed some quite interesting aspects and if the fps break in shows some usefull reason or solution, it will definitely be a great thing.
I think it's hard to make conclusions about framerates when it is above 100.
Still not working on my laptop. All drivers are fully up to date.
Describe behavior please.
It's the same as many people have reported, shuts down immediately after trying to link the shader. No error popup or anything.
Loading command set "C:\Documents and Settings\Ejer\Skrivebord\Downloads\BlitzStuff\engine0.2.8/engine.bcs"...
Compiling script C:\Documents and Settings\Ejer\Skrivebord\Downloads\BlitzStuff\engine0.2.8\Scripts\FPSControls.script...
Script compiled in 6 msecs
Initializing engine...
Leadwerks Engine Version 0.2.8
OpenGL Version 2.0.6287 WinXP Release
OpenGL Vendor: ATI Technologies Inc.
OpenGL Render Device: MOBILITY RADEON X600 x86/SSE2
CPU Vendor: GenuineIntel
CPU Name: Intel(R) Pentium(R) 4 CPU 3.00GHz
CPU Speed: 2992 MHz
OpenGL extensions supported:
GL_ARB_multitexture
GL_EXT_texture_env_add
GL_EXT_compiled_vertex_array
GL_S3_s3tc
GL_ARB_depth_texture
GL_ARB_fragment_program
GL_ARB_fragment_program_shadow
GL_ARB_fragment_shader
GL_ARB_multisample
GL_ARB_occlusion_query
GL_ARB_point_parameters
GL_ARB_point_sprite
GL_ARB_shader_objects
GL_ARB_shading_language_100
GL_ARB_shadow
GL_ARB_shadow_ambient
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_texture_float
GL_ARB_texture_mirrored_repeat
GL_ARB_texture_rectangle
GL_ARB_transpose_matrix
GL_ARB_vertex_blend
GL_ARB_vertex_buffer_object
GL_ARB_pixel_buffer_object
GL_ARB_vertex_program
GL_ARB_vertex_shader
GL_ARB_window_pos
GL_ARB_draw_buffers
GL_ATI_draw_buffers
GL_ATI_element_array
GL_ATI_envmap_bumpmap
GL_ATI_fragment_shader
GL_ATI_map_object_buffer
GL_ATI_separate_stencil
GL_ATI_texture_env_combine3
GL_ATI_texture_float
GL_ATI_texture_mirror_once
GL_ATI_vertex_array_object
GL_ATI_vertex_attrib_array_object
GL_ATI_vertex_streams
GL_ATIX_texture_env_combine3
GL_ATIX_texture_env_route
GL_ATIX_vertex_shader_output_point_size
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_draw_range_elements
GL_EXT_fog_coord
GL_EXT_framebuffer_object
GL_EXT_multi_draw_arrays
GL_EXT_packed_pixels
GL_EXT_point_parameters
GL_EXT_rescale_normal
GL_EXT_secondary_color
GL_EXT_separate_specular_color
GL_EXT_shadow_funcs
GL_EXT_stencil_wrap
GL_EXT_texgen_reflection
GL_EXT_texture3D
GL_EXT_texture_compression_s3tc
GL_EXT_texture_cube_map
GL_EXT_texture_edge_clamp
GL_EXT_texture_env_combine
GL_EXT_texture_env_dot3
GL_EXT_texture_filter_anisotropic
GL_EXT_texture_lod_bias
GL_EXT_texture_mirror_clamp
GL_EXT_texture_object
GL_EXT_texture_rectangle
GL_EXT_vertex_array
GL_EXT_vertex_shader
GL_HP_occlusion_test
GL_NV_blend_square
GL_NV_occlusion_query
GL_NV_texgen_reflection
GL_SGI_color_matrix
GL_SGIS_generate_mipmap
GL_SGIS_multitexture
GL_SGIS_texture_border_clamp
GL_SGIS_texture_edge_clamp
GL_SGIS_texture_lod
GL_SUN_multi_draw_arrays
GL_WIN_swap_hint
WGL_EXT_extensions_string
WGL_EXT_swap_control
Max texture size: 2048
Max cubemap size: 2048
Max texture units: 8
Max shader texture units: 16
Max multisample: 4
Max anisotropy: 16
Max clip planes: 6
Max lights: 8
Shadows supported: 1
Shaders supported: 1
Loading Plugins...
Loading plugin "smf.dll"...
Loading plugin "textureformats.dll"...
Loading plugin "vtf.dll"...
Loading materials...
Loading shader program "default"...
Loading vertex shader "C:\Documents and Settings\Ejer\Skrivebord\Downloads\BlitzStuff\engine0.2.8/Shaders/default.vert"...
Loading fragment shader "C:\Documents and Settings\Ejer\Skrivebord\Downloads\BlitzStuff\engine0.2.8/Shaders/default.frag"...
Linking shader program...
works fine on my dell latitude d800 laptop here.
Interesting,
It wont work on my desktop - I have ATI Sapphire Radeon 800XL.
IPete2.
Hmmm...the x600, is that a first-generation shader card?
I can't believe how badly shaders were first implemented. The amount of code you need just to emulate the fixed function pipeline exceeds the instruction limits of the first shader cards.
I have a crappy Radeon 9550 I can put back in and test with.
Hmmm...the x600, is that a first-generation shader card?
No, it's fully shader model 2.0 compliant.
Will the Leadwerks engine support Mac OS X?
No.
Won't run on my ATI X800Pro either. Gets to the loading shader part and just quits.
Nothing pops up when I click the exe, however I do see the log (Radeon X300/X550):
Script "C:\Documents and Settings\Paul Leduc\Desktop\Downloads\lead\Scripts\start.script" not found.
Initializing engine...
Leadwerks Engine Version 0.2.8
OpenGL Version 2.0.6232 WinXP Release
OpenGL Vendor: ATI Technologies Inc.
OpenGL Render Device: RADEON X300/X550 Series x86/MMX/3DNow!/SSE2
CPU Vendor: AuthenticAMD
CPU Name: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+
CPU Speed: 2200 MHz
OpenGL extensions supported:
GL_ARB_multitexture
GL_EXT_texture_env_add
GL_EXT_compiled_vertex_array
GL_S3_s3tc
GL_ARB_depth_texture
GL_ARB_fragment_program
GL_ARB_fragment_program_shadow
GL_ARB_fragment_shader
GL_ARB_multisample
GL_ARB_occlusion_query
GL_ARB_point_parameters
GL_ARB_point_sprite
GL_ARB_shader_objects
GL_ARB_shading_language_100
GL_ARB_shadow
GL_ARB_shadow_ambient
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_texture_float
GL_ARB_texture_mirrored_repeat
GL_ARB_texture_rectangle
GL_ARB_transpose_matrix
GL_ARB_vertex_blend
GL_ARB_vertex_buffer_object
GL_ARB_vertex_program
GL_ARB_vertex_shader
GL_ARB_window_pos
GL_ARB_draw_buffers
GL_ATI_draw_buffers
GL_ATI_element_array
GL_ATI_envmap_bumpmap
GL_ATI_fragment_shader
GL_ATI_map_object_buffer
GL_ATI_separate_stencil
GL_ATI_texture_env_combine3
GL_ATI_texture_float
GL_ATI_texture_mirror_once
GL_ATI_vertex_array_object
GL_ATI_vertex_attrib_array_object
GL_ATI_vertex_streams
GL_ATIX_texture_env_combine3
GL_ATIX_texture_env_route
GL_ATIX_vertex_shader_output_point_size
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_draw_range_elements
GL_EXT_fog_coord
GL_EXT_framebuffer_object
GL_EXT_multi_draw_arrays
GL_EXT_packed_pixels
GL_EXT_point_parameters
GL_EXT_rescale_normal
GL_EXT_secondary_color
GL_EXT_separate_specular_color
GL_EXT_shadow_funcs
GL_EXT_stencil_wrap
GL_EXT_texgen_reflection
GL_EXT_texture3D
GL_EXT_texture_compression_s3tc
GL_EXT_texture_cube_map
GL_EXT_texture_edge_clamp
GL_EXT_texture_env_combine
GL_EXT_texture_env_dot3
GL_EXT_texture_filter_anisotropic
GL_EXT_texture_lod_bias
GL_EXT_texture_mirror_clamp
GL_EXT_texture_object
GL_EXT_texture_rectangle
GL_EXT_vertex_array
GL_EXT_vertex_shader
GL_HP_occlusion_test
GL_NV_blend_square
GL_NV_occlusion_query
GL_NV_texgen_reflection
GL_SGI_color_matrix
GL_SGIS_generate_mipmap
GL_SGIS_multitexture
GL_SGIS_texture_border_clamp
GL_SGIS_texture_edge_clamp
GL_SGIS_texture_lod
GL_SUN_multi_draw_arrays
GL_WIN_swap_hint
WGL_EXT_extensions_string
WGL_EXT_swap_control
Max texture size: 2048
Max cubemap size: 2048
Max texture units: 8
Max shader texture units: 16
Max multisample: 4
Max anisotropy: 16
Max clip planes: 6
Max lights: 8
Shadows supported: 1
Shaders supported: 1
Loading Plugins...
Loading plugin "smf.dll"...
Loading plugin "textureformats.dll"...
Loading plugin "vtf.dll"...
Loading materials...
Loading shader program "default"...
Loading vertex shader "C:\Documents and Settings\Paul Leduc\Desktop\Downloads\lead/Shaders/default.vert"...
Loading fragment shader "C:\Documents and Settings\Paul Leduc\Desktop\Downloads\lead/Shaders/default.frag"...
Linking shader program...
The problem last time was older drivers but that's probably not the issue this time?
I'll have to pick up one of these cards and see for myself.
Thanks for testing!
this starts sickening me...
none of your demos worked for me.
only one of your early ones using stencil shadows...
Mine too halts at
"Linking shader program..."
Leadwerks Engine Version 0.2.8
OpenGL Version 2.0.6067 WinXP Release
OpenGL Vendor: ATI Technologies Inc.
OpenGL Render Device: RADEON 9800 Pro x86/SSE2
CPU Vendor: GenuineIntel
CPU Name: Intel(R) Pentium(R) 4 CPU 2.66GHz
CPU Speed: 2660 MHz
I need to contact Creative and figure out how to tell whether OpenAL is installed or not.
It's open source. You should be able to include re-distributables and not worry about it.
However, if you need to figure it out for some other reason (supporting multiple APIs), since it's COM based, you can search the registry for it's guid. If it's registered, it should be there, and consistent across machines.