Jump to content

Blogs

Turbo Game Engine Beta Updated

An update is available for the new Turbo Game Engine beta. Fixed compiling errors with latest Visual Studio version Fixed compatibility problems with AMD hardware Process is now DPI-aware Added high-resolution depth buffer (additional parameter on CreateContext()). Subscribers can download the new version here.

Josh

Josh

Introducing the new game

Hi there 🤗 It is very important for me that I only deliver you interesting news and good content and would feel bad, if I don’t. Therefore I created a short survey where you can tell me what you want to get notified about and what not. But for this time I am pretty sure to have interesting news for you. Today I would like to introduce the idea for my next game. Its called "Bladequest" here, because it emerges from "Bladequest - The First Chapter", however I would like to give it a new name. I will probably bring a content update to The First Chapter turning it into Bladequest, when I have a name for my new game. At the end you also have the opportunity to tell me your thoughts about it, by participating in a short survey. So I recently did all the pre-production and am glad to finally present you all the new concepts and features. So let’s go! 💎 The general idea
In Bladequest you are an adventurer living in a small house, outside in the forest. There are different places where you can travel to at any time. Your goal is to earas much gold as possible, by looting everything you find. Of course there will be a reason you want to do this, but I don’t want to spoil it yet. But the places you visit are not abandoned. Bandits, Skeletons, Goblins and other creatures are getting in your way, preventing you from looting. Every time you visit a place, the number of enemies, their location and the time of day will be different and sometimes you even meet vicious end bosses. Once you purged a place, you need to wait a bit, until you can visit it again, to make more gold. In the meantime you can have a good time spending your money, or go for other adventures. Your gold can be spend for new weapons, equipment and even pets. This promises to be a lot of fun. 💎 New gameplay mechanics I especially made myself a lot of thoughts about this, as this is what makes the game fun! ✔️ Travel to different places ✔️ Buy new equipment & items ✔️ Own Player Home ✔️ Destroyable Objects ✔️ New combat features such as parrying and kicking ✔️ All new loot mechanic ✔️ Hidden treasure rooms 💎 New Sound Design Sound & Music is very important for an immersive and atmospheric game, therefore I want to bring the sound design to a new level! ✔️ Professional soundtrack ✔️ High quality sound effects, especially for combat ✔️ New exciting sound events 💎 Content
A lot of new exciting content is planned. ✔️ More enemy types ✔️ More weapons ✔️ More places, including exterior scenes 💎 AI The AI of the First Chapter is one of the first complex AIs I wrote and I got some critics on it, but because I have more experience now and due to the revised systems I believe to be able to fix this issue. ✔️ Smarter AI ✔️ More immersive behavior (e.g. different Idle behaviors) ✔️ More dangerous ✔️ Special enemies, behaving differently 💎 Design & Graphics
The main focus for Bladequest is to make it as performant as possible. I will also fine tune the graphics, work on the models and animations to give the graphics the final touch. Because Bladequest introduces many new features and mechanics I will also revise the UI design. ✔️ New effects like SSAO ✔️ New UI Design ✔️ Revised Models & Animations 💎 System Optimization I am revising nearly all of the systems, bringing them to a whole new level. This includes the UI System, Rendering, Animations, AI, Sound and so on. ✔️ Better Performance ✔️ More Stability ✔️ Allows more complex features ✔️ Save & Load mechanic That’s it so far. Keep in mind that all of this is a work in progress. Not all ideas or features may find their way in the game, but I am very optimistic and can’t wait to make them come true. I am very excited about this game myself and I really mean it, I want to play it NOW! What about you? Tell me your thoughts in this short survey, can’t wait to hear what you think. Stay cool! Markus from Phodex Games 💥 Get Bladequest: The First Chapter on Steam
✔️ Give Feedback for Bladequest: The First Chapter
🎬 Offical YouTube Channel

Phodex Games

Phodex Games

Luawerks Updated

Luawerks has been updated to 1.2.6, making some small adjustments and fixes to the system. If you have previously purchased Luawerks, this update is available for free on the Leadwerks Marketplace. Following changes include: Fixed flag typo correcting LUAWORKS to LUAWERKS Moved error.mat/tex to the Materials/Common folder Added a useuisystem boolean to disable the menu, Adjusted VR mode not to call any UI elements. At this time, this update is only exclusive to the Leadwerks Marketplace. About Luawerks Luawerks is a Lua framework for video games developed on the Leadwerks Game Engine. It supplies developers with additional functions, handles the game loop and allows them to debug their code with a developers console. With all that out of the way, you can focus on making your game fun! You can purchase Luawerks from the Leadwerks Marketplace for $9.99. For documentation and bug reporting, please visit the GitHub page.  

reepblue

reepblue

Pre-Alpha v1.1

After three weeks of work, Pre-Alpha v1.1 is ready.   Terrain The terrain has seen some behind the scenes improvements with speed as well as visual improvements to geometry and texturing.  When I manage to get Texture Arrays working I will be able to finish of the new texturing shader that will include Tessellation and over 16 different texture maps as well as various masks that will paint according to erosion and forest locations. An image of one of the mountains randomly placed in the First World, textured with two 4k textures.  The way the generator works is there is a predefined list of terrain features, like mountains, rivers and valleys.  Based on a low resolution base map which is unique for each fragment, these features are placed at different scales, positions and rotations.  They will also merge with one another to provide enough variation that it will be hard to see any similarities. At the moment though there are not enough maps to make this unnoticeable.           Saving and Loading I have now implemented the ability to save and load a game.  Currently the only states that are saved are the players position, stats and inventory. Each slot shows the date and time that it was saved on as well as the save name and version number.  Slots can be deleted and overwritten.  The version number will change over the course of the updates, but the ability to load older versions will always be available.  And to save a new game, click the empty slot then click save. Now that this mechanic is done I can work on more game play.             What's Next The next step is to improve the blacksmith and general store.  These two places will be the first to provide work opportunities for the player.  These opportunities will improve skill and eventually allow you to buy and use crafting equipment outside of the towns. I will also be implementing some other mercenary characters and animals to hunt.  The mercenaries will just offer some fun conflict to begin with and the animals will offer another source of income.  I hope to have a deer and wolf done by the next update in a few weeks.   The full change log is packaged with the game, here.

SpiderPig

SpiderPig

The new vehicle for Mars

With Josh's news about Nasa, it was the motivation to develop this model of an explorer on Mars with six wheels. It wasn't so complicated after all, and I think it fits more into a Mars game, the real problem is, I don't know anything about textures, and possibly I have to do magic so that this can look nice in some way or another.  But for my taste, it's nice. 



Yue

Yue

Leadwerks Software to Provide VR Services to NASA

TLDR: I made a long-term bet on VR and it's paying off. I haven't been able to talk much about the details until now. Here's what happened: Leadwerks 3.0 was released during GDC 2013. I gave a talk on graphics optimization and also had a booth at the expo. Something else significant happened that week.  After the expo closed I walked over to the Oculus booth and they let me try out the first Rift prototype. This was a pivotal time both for us and for the entire game industry. Mobile was on the downswing but there were new technologies emerging that I wanted to take advantage of. Our Kickstarter campaign for Linux support was very successful, reaching over 200% of its goal. This coincided with a successful Greenlight campaign to bring Leadwerks Game Engine to Steam in the newly-launched software section. The following month Valve announced the development of SteamOS, a Linux-based operating system for the Steam Machine game consoles. Because of our work in Linux and our placement in Steam, I was fortunate enough to be in close contact with much of the staff at Valve Software. The Early Days of VR It was during one of my visits to Valve HQ that I was able to try out a prototype of the technology that would go on to become the HTC Vive. In September of 2014 I bought an Oculus Rift DK2 and first started working with VR in Leadwerks. So VR has been something I have worked on in the background for a long time, but I was looking for the right opportunity to really put it to work. In 2016 I felt it was time for a technology refresh, so I wrote a blog about the general direction I wanted to take Leadwerks in. A lot of it centered around VR and performance. I didn't really know exactly how things would work out, but I knew I wanted to do a lot of work with VR. A month later I received a message on this forum that went something like this (as I recall): I thought "Okay, some stupid teenager, where is my ban button?", but when I started getting emails with nasa.gov return addresses I took notice. Now, Leadwerks Software has a long history of use in the defense and simulation industries, with orders for software from Northrop Grumman, Lockheed Martin, the British Royal Navy, and probably some others I don't know about. So NASA making an inquiry about software isn't too strange. What was strange was that they were very interested in meeting in person. Mr. Josh Goes to Washington I took my first trip to Goddard Space Center in January 2017 where I got a tour of the facility. I saw robots, giant satellites, rockets, and some crazy laser rooms that looked like a Half-Life level. It was my eleven year old self's dream come true. I was also shown some of the virtual reality work they are using Leadwerks Game Engine for. Basically, they were taking high-poly engineering models from CAD software and putting them into a real-time visualization in VR. There are some good reasons for this. VR gives you a stereoscopic view of objects that is far superior to a flat 2D screen. This makes a huge difference when you are viewing complex mechanical objects and planning robotic movements. You just can't see things on a flat screen the same way you can see them in VR. It's like the difference between looking at a photograph of an object versus holding it in your hands.
What is even going on here??? CAD models are procedural, meaning they have a precise mathematical formula that describes their shape. In order to render them in real-time, they have to be converted to polygonal models, but these objects can be tens of millions of polygons, with details down to threading on individual screws, and they were trying to view them in VR at 90 frames per second! Now with virtual reality, if there is a discrepancy between what your visual system and your vestibular system perceives, you will get sick to your stomach. That's why it's critical to maintain a steady 90 Hz frame rate. The engineers at NASA told me they first tried to use Unity3D but it was too slow, which is why they came to me. Leadwerks was giving them better performance, but it still was not fast enough for what they wanted to do next. I thought "these guys are crazy, it cannot be done". Then I remembered something else people said could never be done. So I started to think "if it were possible, how would I do it?" They had also expressed interest in an inverse kinematics simulation, so I put together this robotic arm control demo in a few days, just to show what could be easily be done with our physics system.   Turbo Game Engine is Born With the extreme performance demands of VR and my experience writing optimized rendering systems, I saw an opportunity to focus our development on something people can't live without: speed. I started building a new renderer designed specifically around the way modern PC hardware works. At first I expected to see performance increases of 2-3x. Instead what we are seeing are 10-40x performance increases under heavy loads. Once I saw this I was very encouraged, so I decided to name the new engine "Turbo Game Engine" (the point is absolutely unmissable) and bought the domain name turboengine.com. During this time I stayed in contact with people at NASA and kept them up to date on the capabilities of the new technology. At this point there was still nothing concrete to show for my efforts. NASA purchased some licenses for the Enterprise edition of Leadwerks Game Engine, but the demos I made were free of charge and I was paying my own travel expenses. The cost of plane tickets and hotels adds up quickly, and there was no guarantee any of this would work out. I did not want to talk about what I was doing on this site because it would be embarrassing if I made a lot of big plans and nothing came of it. But I saw a need for the technology I created and I figured something would work out, so I kept working away at it. Call to Duty Today I am pleased to announce I have signed a contract to put our virtual reality expertise to work for NASA. As we speak, I am preparing to travel to Washington D.C. to begin the project. In the future I plan to provide services for aerospace, defense, manufacturing, and serious games, using our new technology to deliver VR simulations with performance and realism beyond anything that has been possible until now. My software company and relationship with my customers (you) is unaffected. Development of the new engine will continue, with a strong emphasis on hyper-realism and performance. I think this is a direction everyone here will be happy with. I am going to continue to invest in the development of groundbreaking new features that will help in the aerospace and defense industries (now you understand why I have been talking about 64-bit worlds) and I think a great many people will be happy to come along for the ride in this direction. Leadwerks is still a game company, but our core focus is on enabling and creating hyper-realistic VR simulations. Thank you for your support and all the suggestions and ideas you have provided over the years that have helped me create great software for you. Things are about to get very interesting. I can't wait to see what you all create with the new technology we are building.

Josh

Josh

Leadwerks Spanish

As far back as I can remember, I've always been interested in video games, but over time I've learned that it's always necessary to learn something and that thanks to Josh when he gave me his free Leadwerks Script license, I got to know Leadwerks and I really loved it.  My point of view is that Leadwerks is much better than other video game platforms I've been on, and it's that Leadwerks is aimed at enthusiastic people without knowledge who want to make a game, and with this software it's all very easy.  However, something interesting about it is that I have understood that one person doesn't make a game, and even if you have a wonderful tool I can't do it all by myself. That's why I decided to translate my knowledge of the Leadwerks engine into a website in Spanish, the goal is that many Spanish-speaking people know it and therefore socialize with people of my language who suddenly we are interested in making a game, so that being two or three people can possibly do something fun at the level of the Leadwerks engine.  Translated with www.DeepL.com/Translator

Iris3D Games  Leadwerks Spanish

Yue

Yue

The new vehicle

The current vehicle doesn't convince me of much, that's why I've wanted to change it for one that is more suited to the Mars scenario.  A 6-wheeled vehicle is much better and in the absence of having what it takes to create a custom model and in the absence of money, I think the next model is fine. Although I could try to make one, but I'm sure it would never end.   The new vehicle completely ignores the spring system in the rims, only hinge joints to prevent this from getting screwed up at high speeds, even if it is damaged is not as evident as reaching high speeds with the sliding joints.  Although there is always the hope that Josh doesn't come across the Atlantic Ocean in the best style of the film the shipwreck. In the end, I don't seem to have made any progress, I create a simple vehicle system, and again I create it again, this is a repetitive shekel, but the advantage from my point of view is that I find ways to make the same process much easier and in the process I learn new things. 
Translated with www.DeepL.com/Translator      

Yue

Yue

Vector Image Support

Building on the Asset Loader class I talked about in my previous blog post, I have added a loader to import textures from SVG files. In 2D graphics there are two types of image files. Rasterized images are made up of a grid of pixels. Vector images, on the other hand, are made up of shapes like Bezier curves. One example of vector graphics you are probably familiar with are the fonts used on your computer. SVG files are a vector image format that can be created in Adobe Illustrator and other programs: Because SVG images are resolution-independent, when you zoom in on these images they only become more detailed: This makes SVG images perfect for GUI elements. The Leadwerks GUI can be rendered at any resolution, to support 4K, 8K, or other displays. This is also great for in-game VR GUIs because you can scale the image to any resolution. SVG images can be loaded as textures to be drawn on the screen, and in the future will be able to be loaded as GUI images. You can specify a DPI to rasterize the image to, with a default setting of 96 dots per inch.

Josh

Josh

Asset Loader Class

There's a discussion on the forum that sort of veered into talking about Khronos' GLTF file format specification: Some of this gave me some ideas for changes in the art pipeline in Turbo Game Engine. I was not feeling very concentrated today so I decided to do some easy work and implement a loader class: class Loader : public SharedObject { public: std::vector<wstring> extensions; virtual bool Reload(shared_ptr<Stream> stream, shared_ptr<SharedObject> o, const int flags = 0)=0; }; Then I created a TEX texture loader class: class TEXTextureLoader : public Loader { public: virtual bool Reload(shared_ptr<Stream> stream, shared_ptr<SharedObject> o, const int flags = 0)=0; }; When the engine is initialized it creates a TEXTexLoader object and saves it in a list of texture loaders: GameEngine::Initialize() { textureloaders.push_back(make_shared<TEXTextureLoader>()); } And the class constructor itself creates an array of file extensions the loader supports: TEXTextureLoader::TEXTextureLoader() { extensions = { "tex" }; } When a texture is loaded, the engine looks for a texture loader that matches the extension or the loaded file path. At this point, all we have done is restructured the engine to do the same thing it did before, with more code. But now we can add new loaders for other file formats. And that is exactly what I did. You can now load textures directly from PNG files: class PNGTextureLoader : public Loader { public: virtual bool Reload(shared_ptr<Stream> stream, shared_ptr<SharedObject> o, const int flags = 0)=0; }; I've done the same thing for model file loading as well, although I have not yet added support for any other file types. If we can add a C++ loader, we should be able to add one with Lua too. I haven't worked out the details yet, but it could work something like this: function LoadModelObj( stream, model ) while stream:EOF() == false do -------------- end end AddModelLoader(LoadModelObj) So with that, you could download a Lua script that would add support for loading a new file format. I think in the new engine we will support all common image formats, including Photoshop PSD, as well as DDS, KTX, and our existing TEX files. Textures loaded from image formats will be less optimal because mipmaps will be generated on loading. Settings like clamping and filter modes will be stored in the associated .meta files, which means these files will start getting published along with your game asset files. This is a change from the Leadwerks 4 way of doing things.

Josh

Josh

Models of the game.

Los modelos, las texturas y todo lo que ves en los gráficos, se saca de la red. El modelo del siguiente personaje, lo he sacado de Yobi3D, y el coche del coche fue dado por Piotr Kups   https://www.artstation.com/piotrkupsc   Entonces, todo lo que estoy pensando hacer es armar el juego, todos los créditos son respectivos a los creadores en la red.





Yue

Yue

Pre-Alpha v1.0

The Seventh World is a Medieval Fantasy Survival game, inspired by the likes of Skyrim and ARK Survival Evolved.   It's been under development for the last two years but only in the last eight months has a real commitment been made to it.  Spending every night after work and every other day working on it I've achieved a base from which to build on. The cuboid landmasses are called fragments.  They are arranged as a sphere to make up a planet.  Game-play will eventually include moving from one fragment to another. Each fragment face has a gravity direction toward the center of the land mass.  Each face is known as a World.  The top most face is the First World.  The left, The Second World.  The right, The Fourth World.  The North face is The Fifth World and the South face is The Sixth.  The last face, opposite to the top is The Third World. Each World is separated by an area of weak gravity known as the gravity void, making it difficult to travel between them without the right equipment.  Each world will also have unique features and biome characteristics. In total, there will be approximately 12.5 million square kilometers of explorable terrain.             There is minimal game-play at the moment.  You spawn in one of the procedurally generated towns and the most you can do is; Harvest trees. Drink from the well. Sell/buy items from the shop. Eat equitable editable items. Run around.       What I'll be working on next is fixing the obvious graphics issues.  This will include; Terrain patch seams. Billboard trees and their many issues. Bugs when nearing the gravity void. Distant fragment seams.             The Plan My overall plan is to get this to an alpha stage so it can be released on Steam.  For this stage I want to have the following implemented; VR Multiplayer Building mechanics. Basic Missions. Improved Graphics.   Bug Warning Physics shapes are not releasing and are causing memory usage to increase.   Various other small memory leaks. Crashes in the gravity void sometimes. Feedback and suggestions are welcome.  I hope to have a progress update every one to weeks. Download Here

SpiderPig

SpiderPig

Test Driving on Mars :D

And the screen, really a pain in the ***..... Well, the test drive on Mars, results with just applying the engine to the rear tires, I still feel it jumps a lot, hopefully in the next leadwerks update to get better control of the joints. Let's hope that update is soon. Another thing is that I think it is impossible to reach high speeds, because it starts to bounce a lot. And happy with the OBS video recording program, he doesn't get slow when he makes a video. Translated with www.DeepL.com/Translator  

Yue

Yue

Glass material

Well, it wasn't the desired result, but it's not that it's too bad, the vehicle's glass looks like this, even though it would have been better transparent, but like many things in life, this is out of my knowledge ("shaders") and it's up to us to adapt to what we have.



Yue

Yue

Steering system realized

Among other things, we already have vehicle glass, which is simple but adaptable to the needs. On the steering rims, they can be moved from left to right with their respective rim headstock. The steering is not automatic at the moment, i.e. it does not return to the central axis without pressing the keys, this has to be done manually, and the speed of the steering rotation will have to be in accordance with the speed of the car in motion. Translated with www.DeepL.com/Translator



Yue

Yue

Motivation has returned

The world moves on the basis of motivation, so again we are here with my learning projects to the limit of being able to think that if I am able to make a game, and is that in Leadwerks, everything is much more wonderful thinking about productivity, of course, there can be better things than this engine, but is what I feel most comfortable with.  Well, the project initially involves rolling a car on the surface of Mars, this is thanks to the work that the engine offers in hinge and sliding joints. I have the job done in the best and most efficient way when the shock absorbers and the engine of each tire, the next step is to set the engine of the car, and set the direction of the front tires so that the scout vehicle can turn and move in different directions on the ground.  So I'll see you in more advance.  Translated with www.DeepL.com/Translator

Yue

Yue

And we continue to learn...

When I learned to write, I was made to make the same letters over and over again on a sheet of notebook paper, not far from the idea of doing the same thing over and over again in the case of a vehicle's suspension system, and all related, shock absorber force, mass value etc.    

Yue

Yue

More Work on Shadows

I found and fixed the cause of the cubemap seams in variance shadow maps so we now have nice soft seamless shadows. I also changed the engine so that point lights use six 2D textures instead of a separate cubemap texture array. This means that all light types are sharing one big 2D array texture, and it frees up one texture slot. I am not sure if I want to have a hard limit on number of shadow-casting lights in the scene, or if I want to implement a system that moves lights in and out of a fixed number of shadowmap slots.

Josh

Josh

×