Jump to content
  • entries
    941
  • comments
    5,894
  • views
    871,235

About this blog

Learn about game development technology

Entries in this blog

Game Launcher release plan

Since the community has done their part and we are approaching 100 game, it's almost time to take Game Launcher out of early preview mode make it a full release. When it becomes a full release on Steam the number of people playing your games will go up, a lot.   There are still some odds and ends in the interface to finish up. The thumbnail loading routine needs to be improved. There are some changes that need to be made so it will work better with Big Picture mode. So I am aiming for a re

Josh

Josh

Game Launcher now runs on SteamOS

Leadwerks Game Launcher can now be used on SteamOS. I fixed a bunch of little issues that were preventing this from running. The interface is not optimal right now for controllers, and there is much left to do, but your games do run. It's pretty fun to play your games on a console, when most of them were developed on Windows and never even run on Linux before.   If you have a Steam Machine give it a try!  

Josh

Josh

Game Launcher final release

We're up to 81 games in Steam Workshop now, and I expect we'll see quite a few more released before the end of the tournament. Some of the stuff this tournament especially is really good, so it's not too soon to start thinking about the final release of game launcher on Steam. At that point the application will no longer be marked "Early Preview" and will get a big increase in downloads on Steam since its visibility will be much higher.   I want to launch with at least 100 total games. This

Josh

Josh

Game Launcher Custom Widget

As described previously, I decided to create a custom widget script to replace the game launcher's HTML panel. The results are already looking awesome! The UI looks really slick. It's great to see this idea come to life in such a striking and attractive manner.   What's really cool is the OS drawing commands are being used, so the games grid uses cleartype subpixel antialiasing, and the UI is completely solid with no flashes or little visual glitches.     Oh, and except for the window

Josh

Josh

Game Launcher beta support for SteamOS

Leadwerks Game Launcher now works with SteamOS, with some caveats.   First, you must set the application to use the "Official Bindings" controller configuration by Leadwerks Software.   When you start Leadwerks Game Launcher on SteamOS, a page of available games will be shown. Click on the game you want to play. The game will be shown on a new page, and a blue button will appear on the bottom left of the screen. You can press the B button on your controller to go back to the main page, or

Josh

Josh

Game Launcher and SteamUGC

I'm working to move our Workshop implementation over to the newer SteamUGC API. There were recently some things updated, and that is still being sorted out. I'm also finishing up the game player.   The first incarnation of Leadwerks Game Launcher was pretty utilitarian (and ugly):   I realized this was pretty drab for a product aimed at consumers, so I designed a more outlandish colorful interface that was purely web-based:   This one looks nice, but you can tell it will start to fee

Josh

Josh

Game Launcher and 3.6 release date set

We're going to release a version 3.6 early with decals and the other enhancements I've recently made. This is scheduled for Monday, August 17th. At the same time we will be releasing Leadwerks Game Launcher as a free early preview title. So you've got exactly two weeks to prepare any other games you want to show off. I'm happy with the lineup we have of 25 games, and am looking forward to the launch so we can show your werk off to the world!   My market positioning with this product is goi

Josh

Josh

Game Analytics API Plugin

Analytics is a feature I have long thought was a good candidate to be moved into a plugin. It is an optional features that only some users care about. It imports some pretty big third-party libraries into the engine. It requires an extra DLL be distributed with your game. It's a totally self-contained features that is easy to separate out from the rest of the engine. I have uploaded my code for Analytics in Leadwerks here as a new empty Visual Studio project:

Josh

Josh

Future Ideas

Here are some of my thoughts on how a future engine might look. I am not devoting any time to this, and it would not come to exist for several years, but it's fun to think about technology and design:   I've been fascinated with the game "Fuel". This game has an enormous playable area that is streamed from the hard drive. You can drive for hours and barely cover a fraction of the map. For some reason the game has been given bad reviews. I played Motorstorm on the PS3, and I think Fuel is a lot

Josh

Josh

Further refinement of physics shapes

I added more options in the model editor for single convex hulls, polymesh, and no collision. Also changed the physics render mode to wireframe so it's easier to see the physics and visual geometry together:     This makes it easier than ever to enable collision on a model, and it works better with the navmesh system:     A new "shrink wrap" method has been added to generate low-poly convex hulls.   Exact convex hull:   Shrink wrap method:   This really saves a huge amount o

Josh

Josh

Further down the rabbit::hole

Let's start with some code for making instances and unique copies of a material: Material* mat1 = new Material; mat1->SetColor(0,0,1,1); Material* mat2 = mat1->Copy(true); Material* mat3 = mat1->Copy(false); mat1->SetColor(1,0,0,1); mat1 and 2 will be red. mat3 will be blue. Shaders, textures, and entities work the same way.   Drawing commands are in. I like how OpenGL3 gets rid of all the built-in matrix stuff and just lets you deal with pure matrix multiplication. It

Josh

Josh

Fun with Stateless API

Leadwerks 5 / Turbo makes extensive use of multithreading. Consequently, the API is stateless and more explicit. There is no such thing as a "current" world or context. Instead, you explicitly pass these variables to the appropriate commands. One interesting aspect of this design is code like that below works perfectly fine. See if you can work through it and understand what's going on: int main(int argc, const char *argv[]) { //Create a model ;) auto box = CreateBox(nullptr); //Cre

Josh

Josh

Fun with JSON

I realized there are two main ways a plugin is going to be written, either as a Lua script or as a DLL. So I started experimenting with making a JSON file that holds the plugin info and tells the engine where to load it from: { "plugin": { "title": "Game Analytics", "description": "Add analytics to your game. Visit www.gameanalytics.com to create your free account.", "author": "© Leadwerks Software. All Rights Reserved.", "url": "https://www.turboengine.co

Josh

Josh

Full Steam Ahead

The standalone version of Leadwerks is no longer being updated. If you have a license for Leadwerks 3.1+ standalone version, you can exchange your registration key for the Steam version. Please contact support and include your Leadwerks registration key.   The Steam edition of Leadwerks can be run online or in offline mode, and can make games that are published to Steam, or published as standalones without requiring Steam. Leadwerks on Steam also includes access to the Leadwerks Workshop vi

Josh

Josh

From concept to final product

I'm working on project creation, management, and publishing right now. This is necessary because it automates some steps that would otherwise be very time-consuming.   When you create a project, you can choose the language and the platforms you want it to run on:   You can switch between projects to reload all assets and change the working directory:   You can export a project into a zip file, give it to someone else, and they can easily import it back from the zip, and have it availa

Josh

Josh

From Cartography Shop to Leadwerks 3.1

This is just a little walk down memory lane that pleasantly shows what has led to where we are today. Some of this predates the name "Leadwerks" entirely.   Cartography Shop (2003)   3D World Studio (2004)   Leadwerks Game Engine 2 (2008)   Leadwerks Game Engine 3 (2013)

Josh

Josh

Friday, November 18

Well, we're through the "OMG will this even work" phase. Aria got FreeType to build on all platforms, so you can load TTF files directly on Windows, Mac, Android, and iOS devices. I set up the accelerometer input on iOS today, so you can call Device::GetAcceleration() and retrieve a Vec3 telling you which way is down. Acceleration is returned relative to the screen orientation, so you don't have to worry about which way the device is rotated. This isn't my proudest screenshot, but it demonst

Josh

Josh

Friday

My little precompiler is going well. It creates makefiles and can split a build up across multiple files. I am working out the interface with external libraries. Here's an example program: Print "Hello World!" And here's the code it outputs and compiles: #include "Hello World.h" using namespace codewerks; //============================================= // Main Loop //============================================= int main(int argc, char* argv[]) { Print(std::string("Hello World!"));

Josh

Josh

Fresh Blood

Dave Lee has joined the Leadwerks team. His job is to create a AAA game environment in Leadwerks Engine. Check out his work here.   (Influences of Crysis and S.T.A.L.K.E.R., how could I not hire him? )   Simon Benge, the lead artist from FPS Creator X, is also completing some animations for us.

Josh

Josh

Freaky Friday

Everyone's gone for the weekend, and I am still here, so it seems like a good time to stop and say hello to the community, who I have not been communicating with much lately.   We spent some time this week doing some market research, and investigating exactly why Leadwerks is different and unique. After that I feel like I have a much better picture of the game industry as a whole, and of our strategy going forward. That's the "big picture" stuff we CEO's do.   Meanwhile, back on the groun

Josh

Josh

Framework, Lua, and the programmers who love them

We're finishing up 2009 by resolving some longstanding design issues that haven't been particularly critical, but have weighted on my mind. Framework is not like the main engine. It's far more high-level, and is also the kind of code people want to customize. I don't like locking the user into my way of doing things. However, the interaction between Lua, C++, and Framework commands are a real issue, which we started to see immediately as Lua became available. This was resolved by compiling Frame

Josh

Josh

FPS Weapons Pack on the way

Based on the excellent sales of the SciFi Interior Model Pack, I was able to get a deal to sell a new pack of high-quality first-person weapons. The following items are included: Pistol Combat shotgun MP5 Machne Gun M4 Rifle Grenade Machete   Weapons are included as animated visual weapons, and as models that can be placed throughout the map to pick up.     Instead of just distributing raw models, I want to offer game-ready items that can just be dropped into your g

Josh

Josh

Forum Update

The forum software has been updated to a major new version.  This completes my effort to give the entire website responsive design, and ensures we continue to receive security updates.  The responsive design part is really for SEO, but it is kind of cool to be able to browse the entire site on your phone without zooming in. Documentation has been switched over to the new system here, which is independent from the forum software: https://www.leadwerks.com/learn The entire site is now us

Josh

Josh

Forum Software and Theme Updated

Our forum software and theme have been updated. The new theme is just the default Invision Power Board skin, with our own header and footer added. In the past I put a lot of effort into getting the forum to look exactly the way I wanted, and I don't think that effort was a very good use of time. Each forum update requires us to redo the skin, and I just don't feel like it is that important. I can fine-tune the appearance of the user interface in the Leadwerks Editor, but this web stuff is o

Josh

Josh in Articles

Followup on social media blog

I'm going to focus on directing people to the Leadwerks mailing list and getting people to sign up for Leadwerks accounts. This is much more valuable than social media followers we have no data for, or even Steam users we can't contact directly.   We do need something extra to get the word out to people on the web about Leadwerks, but I don't think Facebook and Twitter are it...

Josh

Josh

×
×
  • Create New...