Jump to content
  • entries
    941
  • comments
    5,894
  • views
    867,844

About this blog

Learn about game development technology

Entries in this blog

Refocusing on the PC

Back when Leadwerks 2 was first launched, it was just a BlitzMax programming SDK, intended to be a modern replacement for Blitz3D. It turned out Blitz users generally did not want it, and instead the audience it attracted was C++ programmers who like graphics. A visual editor was introduced and it was made as good as possible for a product that started with the intention of just being a programming SDK.   Leadwerks 3.0 was launched with a strong emphasis on the tools that Leadwerks 2 lacked,

Josh

Josh

Building a Collaborative Content Production Pipeline - Part Two

Previously, I described the goals and philosophy that were guiding my design of our implementation of the Leadwerks Workshop on Steam. To review, the goals were: 1. Frictionless sharing of items within the community. 2. Protection of intellectual property rights. 3. Tracking of the chain-of-authorship and support for derivative works.   In this update I will talk more specifically about how our implementation meets these goals.   Our implementation of the Steam Workshop allows Leadwerks

Josh

Josh

Building a Collaborative Content Production Pipeline - Part One

As the maker of a game engine primarily aimed at Indie game developers, I have the opportunity to observe behavior of many individuals working together. This allows me to observe interactions from a perspective the individual participants in the system sometimes can't see.   There are many steps in game development, that can be performed by people with different skill sets. The workflow for Leadwerks is designed on this premise. At its simplest, Leadwerks can be used as a visual design tool

Josh

Josh

Putting the finishing touches on Leadwerks for Linux

I'm happy to say that Leadwerks now supports the entire process of making games natively on Linux. Let's take a quick tour through the process. First, we create a new project in the project wizard. The project wizard will detect project templates (you can make your own) and let you make a game based on Lua script, or on a combination of C++ and script: Step two is to make your game. Fortunately, you've got everything you need built into a single integrated editor, including script and s

Josh

Josh

Building a recursive file system watcher for Linux

Following my previous update about correcting file path cases, I am now able to load all our maps in Leadwerks. The power of this tool running natively on Linux is starting to show:     The next step is to implement a file system watcher to detect file changes. Leadwerks automatically monitors the current project directory, and will reload assets whenever the file changes. This allows you to keep an image open in an image editor like GIMP, and any time you save your changes will be refle

Josh

Josh

Linux update: Scene browser and hidden window contexts

I've made two major improvements to the editor UI this week. The scene tree is now fully functional, and objects can be dragged around in the scene hierarchy: Models and prefabs can now be dragged into the viewports from the asset browser, so the editor is near fully functional now. The X11 windowing system cannot create an OpenGL rendering context on a hidden window. (The same happens on OSX.) On OSX I did a cheesy hack whereby the asset editor windows (the model, texture, material, etc. e

Josh

Josh

New beta update adds improved project updating, bug fixes

A new update is available on the beta branch on Steam. To avoid confusion with outdated projects, the project's status will now be displayed in the project manager. If the project is older than the template folder, a warning icon will be displayed. In addition, the script editor will now warn once about an out-of-date project before running.     The FBX converter has been updated to fix the following issues: Second UV coordinate set was not always being saved. Some FBX files exporte

Josh

Josh

Steam Launch Recap and Steam Dev Days

On Monday, Leadwerks Game Engine: Indie Edition was finally launched on Steam. Before the Kickstarter campaign there was a Greenlight campaign to put Leadwerks on Steam, which it got through in just 27 days. Based on the success of the Kickstarter campaign, I decided to delay the Steam launch and try to get Linux done in time. However, there was one serious deadline I could not miss, and that was the Steam Dev Days conference next week. I knew we needed to have an actual product on Steam by then

Josh

Josh

Leadwerks 3.1

It's December, which means Leadwerks for Linux is nearly here! Last week I had to get into more depth with our tutorials. We're creating a series of maps that demonstrate simple game mechanics. The goal is to show how to set up game interactions by attaching scripts to objects and connecting them in the flowgraph editor, without getting into any actual programming. These lessons center around a first-person shooter, but are applicable to many types of games.   I had to get my hands dirty i

Josh

Josh

Bug fix patch for 3.0

An update has been posted with the following fixes: http://www.leadwerks.com/werkspace/topic/7847-undo-does-not-refresh-gizmos/ http://www.leadwerks.com/werkspace/topic/7842-bsp-mesh-export/

Josh

Josh

Leadwerks Editor in Linux

Things have gone so remarkably smoothly so far in the process of building Leadwerks Linux, that it makes sense we would encounter some issues sooner or later. In this update I will talk about some of the challenges recently encountered. GDB I was able to get GDB to debug an application built with the Leadwerks static library, in this case our editor. It took me a while to realize you have to hit "continue" once or twice when the application starts, because GDB pauses the program when it conn

Josh

Josh

Linux Graphics

Compiling Leadwerks on Linux using the Code::Blocks IDE wasn't very hard. I particularly like the way Code::Blocks handles files in projects. Instead of creating your own "fake" file system in the project explorer, you just add the folder or files you want, and they are organized in a hierarchy that matches the file system.   I found the X windowing system to be extremely easy to work with. I've implemented windowed OpenGL contexts on Windows, OSX, iOS, and Android, and Linux was by far the mo

Josh

Josh

Build a Killer Linux Gaming Machine for $430

Several people have asked me for my hardware recommendations for a new Linux gaming machine. I get rather frustrated by PC manufacturers who load computers up with expensive Intel CPUs and extra RAM you don't need, and then forget to include a graphics card. Or they proclaim PC gaming is not dead and proudly announce their "gaming machine" with a shoddy GPU, that costs more than my first car. I've been building my own PCs since high school, and I know you can build a PC with superior performa

Josh

Josh

Tech Update: OpenGL 4 Deferred Renderer

The OpenGL 4 renderer for Leadwerks 3.1 is well underway. I began implementing deferred lighting in earnest last Friday. Previous work included setting up MSAA on deferred buffers, as well as implementation of the Leadwerks Buffer class, which functions as a thin wrapper around OpenGL FBOs (frame buffer objects). The engine already tracks relationships between objects and lights, and this system was able to be used to provide a list of shadow-casting objects for each point and spot light.  

Josh

Josh

A Red Letter Day

Last week Valve founder and CEO Gabe Newell took to the stage at LinuxCon and proclaimed that "Linux is the future of gaming". Gabe talked about Linux gaming capabilities and promised to unveil something "on the hardware side" the following week. Today, Valve announced the upcoming release of SteamOS, a living-room operating system designed specifically to compete directly with the XBox, Playstation, and Wii console ecosystems. SteamOS will being openness to the console gaming world. This will h

Josh

Josh

Leadwerks 3.0 Updated with Joint Motors

Leadwerks 3.0 has been updated with bug fixes and new support for joint motors. Hinge and slider joints can have an optional motor enabled that will rotate or move the joint to a specified orientation, at a speed determined by the new Joint::SetMotorSpeed command. This is great for making doors, elevators, as well as complex machinery made possible by the speed and stability of Newton Dynamics, the physics library powering Leadwerks (as well as the Amnesia series).   All joints can also have

Josh

Josh

Kickstarter Shipping Update; Leadwerks in the Wild

All stickers have been shipped, and they look absolutely fantastic:   I've never been a "sticker on my laptop" kind of guy, but I am putting one of these on mine as soon as I get home.   Physical items are a little different from getting software to customers. With software, there is at most a delay of a couple hours between the time I have it ready to go, and the customer is using it. I did not anticipate much of a turnover time for the shirts, and I still don't have all the ones I need

Josh

Josh

New Patch Available

A bug fix patch has been uploaded. Run the Leadwerks updater to download the new files. You may need to update projects (see File > Project Manager) and recompiled.   Recent bug fixes can be viewed here: http://www.leadwerks.com/werkspace/forum/80-bug-reports/   Additionally, the following improvements were made: Physics interpolation will be much smoother now. Character controller was adjusted, works great on terrain. A bug in the PhysicsSetRotation() command was fixed, though

Josh

Josh

Leadwerks 3.0 Terrain Update Now Available

A new update to Leadwerks 3.0 is now available. Registered developers can run the Leadwerks updater to download and install the patch. This update adds terrain, bug fixes, and a few small feature enhancements. Our new terrain system, described in our Kickstarter campaign to bring Leadwerks to the Linux operating system, is based on a unique "dynamic megatextures" approach. This technique renders sections of the terrain into virtual textures and places them around the camera. The terrain pre

Josh

Josh

Terrain on the new Google Nexus 7

Compatibility testing for the new terrain system ended up taking an entire week. Most of the problems revolved around OpenGL ES and some iOS driver bugs. Once I got it running on iOS, Android was able to run it with only one small change. The quality settings in this video are lowered for mobile, but the new Google Nexus 7 can actually handle quite a lot, at an impressive 1920x1200 resolution! With a price tag of only $200, this is a great choice for an Android tablet.  

Josh

Josh

Day One

After a much-needed vacation I'm back, and ready to rock. IGDA Summit Everything at the IGDA Summit was mobile, mobile, mobile. Based on this kind of behavior in the industry, you'll have to forgive me for thinking at one time that mobile was the next big thing. There's two problems: Perhaps half the companies there were support services to help you monetize your app. I haven't heard the word "monetize" so much since the height of the Social boom, when people had huge numbers of free users

Josh

Josh

New Update Available

A maintenance update has been uploaded. You can run the Leadwerks updater to get only the changed files since your last update. See the bug reports forum for recently resolved issues.   One new command has been added: static std::string FileSystem::GetAppDataPath()   This will return the application read/write directory for storing settings, high score tables, etc. In order for this to work, you need to update your project. (Open the Project Manager, select your project, and press t

Josh

Josh

30% goal reached in less than 48 hours

I'm writing this as we're a few dollars away from the mythic 30% target that has been claimed to be a "tipping point" past which Kickstarter campaigns reach critical mass. I'm not going to go into any detail about that because I don't want to jinx it, but so far I am blown away by the response. We put this up Sunday in advance of contacting bloggers, so nobody really knew about it the first day. It's Tuesday morning and we're presently at 29%.   I've heard a number of people point out that

Josh

Josh

Teaching Leadwerks

About a week ago we sent a survey out to Leadwerks 3 customers to get their feedback and plan our next leg of development. According to the results, the number one most important issue Leadwerkers care about is tutorials.   We've taken the following steps to build resources for Leadwerks user to learn from: The Leadwerks 3 tutorials database is available here. Anyone can submit a new article, but all articles must be approved by the staff before they appear visible. Without a process of a

Josh

Josh

Leadwerks 3 Gets Projected Shadows

We've got a Leadwerks 3 update coming out this week, with miscellaneous fixes and some new features.   The first are the addition of Import and Export buttons in the Project Manager. You can export an entire project to a zip file. You can import a project from either a Leadwerks project file (*.werk) or a zip file. This makes it easy to share projects and synchronize your work across different computers.   The second new feature is projected shadows. These allow characters and other ob

Josh

Josh

×
×
  • Create New...