Between the release of LE3 and the GDC, life at Leadwerks has been busy to say the least. Now that things have settled down (a little) it is time for something that I have been looking forward to for a while: Tutorials!
At GDC we were constantly talking about the power and flexibility that direct native code programming allows and how users are not locked into only component based programming. But then you look at the example game Darkness Awaits and see only component based programming and
After a wild week at GDC 2013, it's nice to be back doing what I do best...writing code!
A new build of Leadwerks 3 is now available. We've added light vector maps so that lightmapped surfaces can display normal mapping effects. Lightmapped materials with normal maps should use the texture "Common/lightvectormap.tex" in slot 4. (If you create a new lightmapped material, this will be done automatically.)
This technique works by calculating the average light vector that influences eac
Hopefully this will be the most pointless blog I ever post for Alien Saga. BUT, fyi, I have a weird work schedule where I work like crazy for about 9 days where I'm on the road a lot and so on even when I'm sick like with last week and this week, and then I hopefully get 5 days off round abouts.
tl;dr There are updates to be made within the next 5 days or so.
You may notice the website header looks a little different. Sleeker, cooler, more 2013ish. Well, it's actually a lot more classic Leadwerks than you might realize. Here's what Leadwerks.com looked like in 2005:
I don't think it's fair for me to put Josh's every move with LE3 under scrutiny without exposing my own work to criticism. So here I will be posting my progress on my opening exercise with Leadwerks 3. I will be working on improving in all walks of game development and also responding to the soon to be created video tutorials.
I plan to work on my first LE3 project for the next 4-6 months in iterations. Which means that I will do a rough once over version that will admittedly look and play l
I'm back home now, relaxing after a long week away. And what a week it was!
I got my lecture out of the way on Monday. I felt like I was pretty well prepared, but some acoustical problems in the hall really made it very difficult to concentrate, plus I was pretty nervous about talking in front of about 600 people. I did it though, and hope to do another one next year. The recorded lecture should be available in the GDC vault.
During my talk, I described my experience as a PC developer,
In follow up to Andy, I also want to do a little blog on my experience with Leadwerks 3 so far. The first week after purchasing I didn't have much time to spend on it. Luckily after that week, there was quite some time left for the start of a new adventure.
Lua
In contrary to Leadwerks 2.3, I now want to lay most of my focus on C++. That is kind of Ironic, since a lot more people are interested in Lua now that Leadwerks 3 has arrived. It is not that surprising since the advantages of
We're very busy this week, doing a lot of things that are out of the ordinary for us.
Leadwerks Software will be at booth #938 at GDC 2013 in San Francisco March 27-29. Come by our booth if you're in the neighborhood, play with the full software, watch our demo reel, and get a look at the world's first...well, you'll have to come see it for yourself.
If we get a chance, we'll stream some video from the event.
Here's our staging area.
Following the GDC, Chris will be focusing o
My hours of use in leadwerks 3 is already counting up fast and along the way i thought i would share some of the things ive found so far. Which no doubt means this will turn into a small rant about the features i wish leadwerks 3 had in its current version I am not going to talk about bugs as we all should expect them in new software and trust they get resolved as soon as Josh can get around to them, what i am going to talk about are a couple of (to me) significant issues with the "current" lea
The last few weeks have been interesting as we've been figuring out where Leadwerks 3 fits into the game development landscape.
The good:
The feedback from the Leadwerks 3 users has been more positive than anything I've ever seen. People love using it. All the care and attention to the tools has really paid off. The return of constructive solid geometry is a huge win.
At the upgrade pricing, we're doing a lot of sales. Leadwerks 3 makes more in a week than Leadwerks 2 made in a mont
An in-depth look at a basic Third person camera.
Script.target = nil--Entity "Target"
Script.distance = 5--float
Script.debugphysics = false--bool
Script.debugnavigation = false--bool
Script.pitch = 35--float
Script.angle = 180--float
Script.pickradius = 0.5--float
Script.verticaloffset = 1.8--float
Script.smoothness = 30--int
function Script:Start()
if self.target==nil then return end
--debug functions for viewing physics or navigation in game
self.entity:SetDebugPhys
A tutorial for creating map with a goblin that has third person controls and a third person camera
1. Create a new project.
Inside the LE3 editor open up the leadwerks project manager click File->Project Manager
Once open click "new" select "Lua" project, add a title, and click "Ok".
Select your newly created project and click "Ok"
2. Create a platform for the goblin to stand on.
In a 2d viewport drag-out a box to be used as a platform.
3. Add a material
That was one crazy weekend! Things were hectic at times, but we managed to process all orders and get people started with Leadwerks for Android. Well, everyone except YouGroove. I've got to do some tests on a clean install of Windows, so I will figure out exactly what JRE to install, since that part can be confusing.
I uploaded new builds for Windows, Mac, and Android just now with performance improvements. Darkness Awaits is playable now on my Samsung Galaxy Tab 2, though I know I can
For those of you who are more familiar with C style syntax here are a few oddities that initially threw me off:
The not equals in lua has a tilde
self.entity ~= nil
if you want to "not" a boolean you have to use the keyword "not"
if not self.target then
All "if" statements you have to do include 3 keywords if, then, end
if self.stunned==true then return end
While loops have 3 keywords while, do, end
While x < 10 do x = x+1 end
This is what a for
Well, starting with leaving my iMac's power cord at home, this has been a chaotic day, but we're getting it under control. Leadwerks 3 is a much bigger step beyond Leadwerks 2. We're no longer confined strictly to the PC platform, we've now got a C++ code base that can be used in many ways, and our new tools are really nice to use, if I do say so myself. It's also nice to sort of reconnect with our origins in the CSG editing tools. The feedback on this has been very positive, and I think it
Developing a failure sucks. You spend hundreds, sometimes thousands of hours on a project only to find out that it's a complete flop and nobody wants to use or play it.
As independent game developers we have a unique situation and challenge. Our resources are limited and our conditions are that of extreme uncertainty.
Acquiring certainty of the success of a project by collecting feedback early on is great way to determine whether to continue, change course, or drop the project. You'll wa
The Leadwerks community project "Midnight Salsa" was one of my favorite things that came out of Leadwerks 2. Watching the videos of everyone collaborating across the globe was really interesting, and with Aggror's leadership they did pull off what they set out to do: Make a playable zombie FPS. However, there were some weak points that showed me where I could put effort and have it be the most useful.
When you go through the first set of doors, a carefully placed light above the door shin
A couple weeks ago I replaced the Object::SetHook() function with an Object::AddHook() function. The difference is subtle but significant. SetHook() supported a single hook function but AddHook() supports multiple hook functions for each hook ID, that will be called in sequence.
Syntax
AddHook(const int& hookid, void* hook)
Example
#include "App.h"
using namespace Leadwerks;
App::App() : window(NULL), context(NULL), world(NULL), camera(NULL) {}
App::~App() { delete world; de
I've spent the last few days writing simple examples for every single command in Leadwerks 3. Not only does this make the documentation more friendly, it also acts as a final test to make sure all the commands work the way they say they should. I make the C++ example and then Chris converts it to Lua (and tells me what I did wrong!).
I didn't realize it at first, but this really showcases the strength of API design of Leadwerks. Since you get full control over the execution and flow of a
I got the editor documentation written pretty quickly. It was hard to start, but once I figured out how I wanted to lay out the information, it all started flowing pretty easily.
Documentation in Leadwerks Engine 2 was a weakness, especially in stuff other than the programming reference. This is unfortunate, because I have come to see documentation as the final product. Everything in the development cycle leads up to the ability to write good documentation.
Good documentation starts w
Time invested into a game doesn't determine it's sales.
This is an important fact to acknowledge if you decide to enter the wonderful world of independent development.
If I had to do things over again I would create a simple game and focus on addicting game play and mechanics.
The real question I've been asking myself these last couple of weeks is what do people buy when it comes to games? And how can I incorporate these into a game the would only take a few months to create.
Wha
Hello all,
For a change, no images this time. Those will come in a later blog, so don't panic.
We all like music, right? Some are into Jazz, others love house, and some (like myself) love metal.
Music is another way to express feelings/moods, and most games have music that matches the game/level somehow.
In the previous blog about Seventh Crystal Of Theia, there was no sound in the video, and that was a shame, because there are already a bunch of environmental sounds and music in the