Jump to content

Leadwerks 3 Update Brings Rendering Enhancements to Mobile

Admin

2,100 views

An update for Leadwerks 3 has been released, bringing new graphical enhancements to mobile games. Building on the efficient art pipeline and user-friendly tools of Leadwerks 3, the engine now supports projected shadows for characters and other dynamic objects. This technique works by casting a shadow onto the surrounding world geometry, to provide real-time shadows that run fast on all platforms.

 

Image3.jpg

 

To enable dynamic shadows on a single object, just select it in the editor and choose the new "Dynamic" option in the "Cast Shadows" property. You can also do this in code by calling Entity::SetShadowMode(Light::Dynamic).

 

Image2.png

 

Leadwerks 3 has also gotten a visual upgrade with the addition of post-processing effects. In Leadwerks 2, all post-processing effects like volumetric light scattering, screen-space ambient occlusion, depth-of-field, and bloom were hard-coded. That is, they were written into the core engine and it was difficult to customize the renderer. Leadwerks 3 has added a new command, Camera::AddPostEffect(), which allows the user to attach a shader right to a camera, to automatically render post-processing effects.

 

The new update also includes features to make it easier to share projects. The Project manager has been outfitted with new Import and Export buttons. You can export an entire project as a single ZIP archive. You can also import a project from a .zip or .werk project file. This makes it easy to share projects and collaborate with other Leadwerks developers as a team.

 

Leadwerks is a fast and flexible development platform for building mobile games with native code. You can download a 30-day trial version on the website here.



4 Comments


Recommended Comments

You can export an entire project as a single ZIP archive. You can also import a project from a .zip or .werk project file. This makes it easy to share projects and collaborate with other Leadwerks developers as a team.

 

Awesome for that part :)

Share this comment


Link to comment

I should add that for mobile projects, the following files have changed and need to be updated in your projects:

(YOURPROJECT)/Projects/Android/jni/main.cpp

(YOURPROJECT)/Projects/iOS/(PROJECTNAME)/ViewController.mm

 

A low-level addition had to be made so render-to-texture would work on mobile.

Share this comment


Link to comment

Since the previous comment, we've added a project update feature so you no longer have to copy updated files manually from our original templates.

Share this comment


Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Blog Entries

    • By 💎Yue💎 in The shock absorbers 2
      Coming to the end of my prototype of a 3d game, and with background music by Hanz Zimmer ( Time ). I saw my progress in many aspects, always something to learn, always something to improve, I didn't intend to make a game, that has never been the goal. 
      Rather, the effort and dedication immeasurably, was to improve on something learned. And here I was with the powerful leadwerks engine, where his greatest power lay in making everything very easy.  
      About the project
      The prototype is very simple, a third person character goes through a stage, an orbital camera that follows him with many interesting things when scripting.  A character who runs, walks, ducks, jumps, and suffers damage when he falls from different heights. 
      The interesting thing about all this is that just like when you're little and learn to write, repetition is key to learning to program, understand concepts and improve.  So as I've always said, you learn to program by programming, although I sincerely think that lua script is not programming, but the experts say it is, so I go into that elitism of those of us who think we are programmers. 
      The final part of the project consists of creating a death animation, this will be activated when the player falls from a high part and separates the legs (that is very cruel). 
      But that feeling of improvement is the same that I feel when in the mornings when I have a coffee I solve a riddle of the newspaper, but I don't know when I'm going to stop, it turns out and it happens that technology advances very fast and this continues and continues without stopping. Starting with LE 5, and the only thing that can happen is that I die or that my old computer doesn't work anymore. 
      Translated with www.DeepL.com/Translator





    • By 💎Yue💎 in The shock absorbers 1
      It's interesting that when you become an expert on something, you're not sparing any effort to see how something works, but rather you're focusing on creating something. And so everything becomes easier.
      At this point of learning there is a glimpse of a low idea of creating a game, but the secret of all this is to keep it simple and to be very clear that a game is a game, and not an exact simulation of the real world. For example anyone who has a low idea of the red planet, will understand no matter the colors of the scene that is a terrain of Mars, even if it is not very real what is transmitted, a game, that's just it.
      At this point I already have an astronaut character who runs from one place to another on a very large 4096 x 4046 terrain that would surely take a long walk. My previous prototype projects involve a vehicle, but I didn't get the best implementation prospect in that time and I always found performance problems in my machine, something that isn't happening with the character controller for a third person player. 
      As always, I think I'm a scavenger looking for game resources, that's where this community exposes links to websites with interesting hd textures, and one or another model searched on the net, but what I've greatly improved is learning to write code, I have a better workflow, writing Lua code focused on the paradigm of object programming.



      Something interesting is the system of putting rocks, all very nice from the point of implementing them. And it works very well with the character controller if you put collision in cube form.
      I've been thinking about implementing a car system, I think it would be necessary in such a large terrain, but I think it's not the time, my previous experience, involves deterioration in performance and something I think is the physics of the car with respect to the terrain and rocks that in the previous project involve deterioration in the fps. Although if you implement a car would have an option would be to remove the rocks, but I prefer not to have a car and if you have rocks. 
       
       
       
       
    • By Josh in Josh's Dev Blog 3
      What's new
      EAX audio effects for supported hardware. Source class renamed to "Speaker". Plane joint for 2D physics, so now you can make Angry Birds with Vulkan graphics. Fixed DPI issues with fullscreen mode. Added impact noise to barrels, fixed Lua collision function not being called. Script functions now start with "Entity:" instead of "Script:", i.e. Entity:Update() instead of Script:Update(). Additionally, four examples can be run showing various functionality. Double-click on the .bat files to launch a different demo:
      First-person shooter game. 2D physics demonstration. Advanced 2D drawing with text, rotation, and scaling. Multi-camera setup.
×
×
  • Create New...