Jump to content
  • entries
    943
  • comments
    5,899
  • views
    924,413

Week 2


Josh

4,429 views

 Share

What an interesting first week. I compiled a C++ program for Android, made a programming language, learned about iPhone development, and figured out a lot of C++ stuff I did not know.

 

It's nice to see that a port to Android will work pretty much like I was hoping. I just write an abstract driver for every system, and have specific drivers that extends that class:

class GraphicsDriver {}

class GL4GraphicsDriver : public GraphicsDriver {}

 

Then when you have something like a surface that is dependent on the graphics driver, you do this:

surface = GetGraphicsDriver().CreateSurface()

 

And a GL4Surface object is returned. Of course, this is just the internal workings, and you will only have to call CreateSurface(). The GL4Surface is an extension of the Surface class, the same way the GL4 graphics driver extends the base graphics driver class.

 

I would like to get something running on my HTC Evo, but the details of an Android, XBox, or PS3 version aren't too important right now. What is important is to get the C++ core done, in a way that makes it easy to add support for more platforms in the future. So as planned, you'll get a .lib file for C++, a .dll you can use with any language, and multiple Lua scripts can be attached to any entity.

 

A roadmap of the development plan can be viewed here. I hope to accomplish most of stages 1 and 2 myself, and then recruit additional coders for the last leg. I don't intend to write the networking code myself, either. I figure it will be easier to develop streamed terrain from the beginning, instead of trying to tack it on two years from now, so I will see what I can do about that. I've never seen an infinite streamed world with the density and complexity I want, but Leadwerks seems to do best when we do really aggressive development:

http://leadwerks.com/werkspace/index.php?/page/roadmap

 

What I like best about this process is the code I write now is ForeverCode: It's good for any platform, and it will last for the life of the engine, which will be a very long time. I really can't imagine ever writing a version 4, because version 3 is being designed to be perfect.

 

At this point I would like to thank Roland Stralberg, Mika Heinonen, and Ed Upton for their feedback and wisdom.

 Share

17 Comments


Recommended Comments

Thanks for the roadmap josh, and for keeping us informed on what's going on do you have any time estimation for the stage 1 of the roadmap ? ;)

Link to comment

I was going to quote all the sentences accompanied with a +1, but in the end, it's shorter to say:

 

-Good inheritance design

-Thanks for the roadmap

-Great news for the DLL/C#

-Yay for the streaming terrain.

 

Therefore, +>9000

 

I've never seen an infinite streamed world with the density and complexity I want, but Leadwerks seems to do best when we do really aggressive development.
Percfect. ;)
Link to comment

I would still look into using blender in some way. You could have PTEX and sculpting and animation all done inside of your editor maybe... at least it's worth a serious look. I think you'd be able to change the interface into anything you wanted. You could design it so it's free. But of course the free software wouldn't work without being connected to the commercial Leadwerks SDK.

 

Having access to blender functionality would mean that the groundwork for lots of features like baking light maps in the editor itself would be possible as well as one hell of a cinematic editor.

Link to comment

I really can't imagine ever writing a version 4, because version 3 is being designed to be perfect.

 

That's quotable for sure ;)

Link to comment

I really can't imagine ever writing a version 4, because version 3 is being designed to be perfect.

Famous last words. ;)

 

The road-map and your plan sounds perfect. Now can any of us afford it? ;)

 

ESP to JOSH: $499..........

Link to comment
The beta will go on sale at a discounted rate when I feel the time is right.
Does this mean that if you buy the beta at a discounted price you'll get the full version for free once it's released?

 

Also, does entity movement include pathfinding? If not, will that also be included in version 3?

 

That said, I'm very happy and extremely excited about some of the upcoming features. I'm one of Leadwerk's low-skill users so I look forward to the "simple" things: networking (yay!), water/river and plenty of brief and easy to understand examples, tutorials & samples. I hope all these new features don't make things too complicated.

Link to comment
Does this mean that if you buy the beta at a discounted price you'll get the full version for free once it's released?

Yes.

 

Also, does entity movement include pathfinding? If not, will that also be included in version 3?

Built-in pathfinding will be supported.

Link to comment

Yes! ;) Assuming the library will remain as easy-to-use as it is now (or easier - using the post-processing effects, for example, seems a little more complicated than it could be) it seems this library will have everything I could ever want.

Link to comment

I just want entities to be synced, files to be transferred, and let the user transmit whatever raw data they want. I could spend the next year learning raknet, and still wouldn't know anything. Actually, the only things I don't know how to do myself are NAT punch-through and TCP file transfer, so I'll probably just write the commands and then let the network programmer worry about the details of implementation.

Link to comment

All sounds very exciting.

I will be interested to see what you do with the actual pricing though - I'm not yet sure whether I want to pay again whilst so many premium engines (CryEngine, UDK, etc) are going completely free except royalties of course. But not paying anything up front is important to indies.

Link to comment
Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...