Leadwerks Game Engine 5 Alpha Zero Released
I'm happy to announce the very first alpha release of Leadwerks 5 is now available.
What's New
- String commands now accept a unicode overload. Add "L" in front of a string to create a wide string in C++.
- Now using smart pointers. Simply set a variable to nullptr to delete an object. There is no Release() or AddRef() function.
- Exclusively 64-bit!
- Global states are gone. There is no "current" world or context. Instead, the object you want is passed into any function that uses it.
- We are now using constant integers like WINDOW_TITLEBAR instead of static members like Window::Titlebar.
- Now using global functions where appropriate (CreateWorld(), etc.).
- Renderer is being designed to be asynchronous so Context::Sync() is gone. 2D drawing is not implemented at this time.
Here's the syntax for a simple program.
#include "Leadwerks.h" using namespace Leadwerks; int main(int argc, const char *argv[]) { auto window = CreateWindow(L"My Game", 0, 0, 1024, 768, WINDOW_TITLEBAR); auto context = CreateContext(window); auto world = CreateWorld(); auto camera = CreateCamera(world); camera->SetPosition(0, 0, -3); auto light = CreateDirectionalLight(world); light->Turn(45, 35, 0); auto model = CreateBox(world); while (true) { if (window->KeyHit(KEY_ESCAPE) or window->Closed()) return 0; if (window->KeyHit(KEY_SPACE)) model = nullptr; world->Update(); world->Render(context); } }
You can get access to the Leadwerks 5 Alpha with a subscription of $4.99 a month. You will also be able to post in the Leadwerks 5 forum and give your feedback and ideas. At this time, only C++ is supported, and it will only build in debug mode. It is still very early in development, so this is really only intended for enthusiasts who want to play with the very bleeding edge of technology and support the development of Leadwerks 5.
- 1
7 Comments
Recommended Comments