Sign in to follow this  
supervlad

Unity General game design needs to be reexamined -- for everyone

Recommended Posts

Hey guys, Doesn't it seem that we keep reiventing the wheel? We're always creating "Frameworks" and whatnot to help us cope with the GIANT that is game programming using C/C++ and DirectX/OpenGL. Deep down we know, though, that no matter how well designed our framework is, we can't fake the complexity of C/C++, or do away with the nasty aspects inherent with those languages(pointer to pointer, anyone). I few years ago, after much deliberation, I realized that the best, most elegant solution to this recurring problem would be to create a new game platform all together. Only this way could the whole design be tailored for game programming. This meant that I would be designing software I had never written before. Let's face it, we need a programming language just for game programming; one that is designed for humans, not computers; one that has native support common issues we face when designing games -- think native classes for cameras, models, special effects, sound, networking, along with automatic scene management, instant cross platform, builtin memory management, etc -- all simplified to their most basic form, yet retaining the raw power. Isn't that what we need? Damn it, we're computer engineers, it is our duty to device things like this. We should be astriving to design tools that will gain the respect of future engineers; tools that would allow non-gifted programmers (see John Carmack) to turn their vision into realities without spending years learning the tools needed to do it. This has to be done, there's no way around it. Fortunately I started the effort a few years ago. Now, I can finally release a 0.0.1-PreAlpha version of the Bolt Platform. The foundation is now set. However, althought the project is a few years old, it is still in its infancy. I have also purposedly left out many of the high level details( including most aspects of the programming language) because I feel I must consort with the community if this is really to be a community platform. If we can all put a little effort, we can all get big results. the Bolt Platform's home is located at http://www.agoba.com Please, at least take a look at the project, even if only to give it your critique. Thanks, vl@d

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
I guess many people will agree with you concerning the need for such a platform, on the other hand, combining dependencies such as OpenAL, SDL, OSG, ODE and an embedded scripting interpreter of your choice, you'll basically end up with a fairly powerful generic framework

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
it looks fairly interesting, however it's admittedly hard to get a comprehensive impression based on what you provided on the website, at least as long as you don't intend to directly download, compile, read the source code.

I think you could make it easier to get people interested by providing the source code itself via the website in a browser-readable fashion, i.e. the DoxyGen sources. Also, providing various real life examples - possibly syntax-highlighted- would probably be a good idea, too.

BTW: the youtube.com link doesn't work

Share this post


Link to post
Share on other sites
You're big on marketing speak but low on results. Your sample script doesn't look too inspiring, appearing much like C# but with superfluous dollar signs on the variables. Do you have any idea how you're going to achieve any of this?

Share this post


Link to post
Share on other sites
Quote:
Original post by supervlad
Deep down we know, though, that no matter how well designed our framework is, we can't fake the complexity of C/C++, or do away with the nasty aspects inherent with those languages(pointer to pointer, anyone).

Eh? I never used a pointer to pointer, unless it was required by one of my libraries (Win32).

Quote:
I few years ago, after much deliberation, I realized that the best, most elegant solution to this recurring problem would be to create a new game platform all together. Only this way could the whole design be tailored for game programming.

Why is this? What advantages does it provide over a library written in a general-purpose language? DSLs tend to die quite fast.

Quote:
Let's face it, we need a programming language just for game programming;

Why, you keep stating these things, as though they were obvious, but I doubt many people agree.

Quote:
one that is designed for humans, not computers; ... retaining the raw power.

Current techniques doesn't allow us to retain raw power and still make a language for humans, also what is meant by a language for humans? Just a high-level language? Something like a natural language?

Quote:
one that has native support common issues we face when designing games -- think native classes for cameras, models, special effects, sound, networking, along with automatic scene management, instant cross platform, builtin memory management, etc -- all simplified to their most basic form, yet retaining the raw power.

All this is easy to create in a general-purpose language.

Quote:
We should be astriving to design tools that will gain the respect of future engineers;

And you believe you will do that? Have you considered concurrency? If not then you don't have a huge chance of gaining the respect of future engineers.

Quote:
tools that would allow non-gifted programmers (see John Carmack) to turn their vision into realities without spending years learning the tools needed to do it.

Are you implying John Carmack aren't gifted? He might not be the best, but he certainly is gifted.

Quote:
This has to be done, there's no way around it.

Sure there is, many. DSLs written in a general-purpose language for example.

How are we supposed to criticize the actual project? We have no information at all, all we know is that you don't believe libraries is sufficient, however according to you a separate DSL would have lots of advantages, you just haven't mentioned them yet.

Would you mind pointing us to some documentation about your project, a commercial isn't enough.

I know your source is open, but very few people have time to figure out how to make it work with no documentation.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
It sounds like you're talking about a game engine with a scripting language along the lines of UnrealScript, no?

Share this post


Link to post
Share on other sites
What advantages, exactly, does bluring the line between game engine and language bring you? I'm not seeing it. Your example script certainly dosn't illustrate this (and also hints at the wrong kind of OOP - Object Obsessed Programming). Such FAQ entries as "Think of a pleasant combination of PHP/Java/ActionScript" alone are enough to scare me off - "(their good aspects)" or not. My thoughts are roughly "What good aspects?" and "What you think their good aspects are.", in that order. Given your earlier snippet, and given how much even professionals screw things up at times, quite frankly, I don't trust what you think. I need convincing with actual examples illustrating it's strengths, rather than some fancy hogwash about the language somehow abstracting away more details than an equivilant game engine.

Because as is, if I'm going to contribute to some community effort, I'd rather focus on a game or graphics engine that:
1) Won't distract me with helping implement and develop on an alpha language.
2) Allows me to use my existing codebases of library code.
3) Has a better chance at community adoption, as the two points above would infulence others even if they didn't infulence me.

Or, you know, one of the more mature "game centric language" wheels that you've reinvented (DarkBASIC anyone? I'm sure there's numerous OSS equivilants, at least of comprable progress to your own project).

Share this post


Link to post
Share on other sites
@ anynymous poster
Quote:

I guess many people will agree with you concerning the need for such a platform

Undoubtedly, the need exists.
Quote:
combining dependencies such as OpenAL, SDL, OSG, ODE and an embedded scripting interpreter of your choice, you'll basically end up with a fairly powerful generic framework

This is correct, to an extent. It would be more accurate to say "A fairly powerful language generic enough to create any game"

@ other anynymous poster
Quote:

it looks fairly interesting, however it's admittedly hard to get a comprehensive impression based on what you provided on the website, at least as long as you don't intend to directly download, compile, read the source code.

I think you could make it easier to get people interested by providing the source code itself via the website in a browser-readable fashion, i.e. the DoxyGen sources. Also, providing various real life examples - possibly syntax-highlighted- would probably be a good idea, too.

Thank you. This is precisely the kind of feeback I'm looking for.

@ Kylotan
Quote:

Your sample script doesn't look too inspiring, appearing much like C# but with superfluous dollar signs on the variables.

There's a reason why Microsoft, Sun, Zend, Adobe/Macromedia, AT&T chose similar syntax for C#/java/PHP/ActionScript/C++ -- because they work. The goal isn't to create a new model for a language, but to improve on the models set forth by our predecessors, which have amassed combined centuries worth of man hours creating it for us. If we choose to ignore what they have done, we would just be wasteful and foolish.

@Ctar
Quote:

Eh? I never used a pointer to pointer, unless it was required by one of my libraries (Win32).

So you have used it, good to know.
Quote:

What advantages does it provide over a library written in a general-purpose language? DSLs tend to die quite fast.

Sure, you could use a rock to hammer a nail, but if we spend the time to create the hammer, it would end up saving us countless hours worth of work(not to mention painful joints). I don't know why DLSs (I assume this is "Domain Specific Language") die often, but the ones that survive tend to change history(see PHP, ActionScript).


@ 3rd anonymouse poster.
Quote:

It sounds like you're talking about a game engine with a scripting language along the lines of UnrealScript, no?

Basically, yes.


Overall, thanks for the comments, guys. I realize that I haven't covered all the bases you guys would like, but you guys remember that "Even a 1000 mile journey must start with a single step". I'm committed to finish this journey, I can only hope you guys continue to provide constructive support.

PS. I know the youtube link doesn't work yet. I'm looking for a screen capture software for Linux. This is a place holder for now. It will be up soon.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Partner Spotlight

  • Forum Statistics

    • Total Topics
      627665
    • Total Posts
      2978524
  • Similar Content

    • By Kurupted Playz
      Hey, I'm looking for some people that can help me with a game that I'm making that is a 3d platformer.
      I mostly need someone for character design and animation,  I can do some coding but if you can do coding as well you're still welcome because I'm still not the greatest at coding just yet.
      if you need to contact me add me on discord @ Kurupted#1206
       
    • By Jcyshadow97
      Hi,guys.I m working on a Fantasy RPG.Currently i m work alone on the project.I really need someone can make UI stuff.If someone can handle it please feel free to contact me on email: 270514974@libero.it.
      Thank you guys and sorry for my english.
       
       



    • By STRATUM the Game
      Hey, everyone! This is my first post here.
      I would like to know what you think about my project called STRATUM. It's a 2D platformer that is heavily based on storytelling and boss fighting while trekking through the world.

      Everything in STRATUM takes place in the first century AD, in a world that wraps our own universe, called  The Stratum. A parallel Universe that is the home of the Christian deities . In this game you will play as a Dacian warrior, unfamiliar with everything in this world, you’ll get to know and understand The Stratum together with him.
      The main thing that I want with STRATUM is to reinvent the known lore and history of the Christian deities and realms. 
      The story is unconventional, it plays down a lot of the mysticism of Hell or Heaven and it gives it a more rational view while keeping the fantastic in it. What do I mean by that? Well, think about Hell. What do you know about it? It's a bad place where bad people go, right? Well, that's not the case in STRATUM. I don't want to describe such a world. In STRATUM, there is a reason for everything, especially for the way Hell is what it is in the game. "Hell" is called The Black Stratum in the game.
      This world is not very different from Earth, but it is governed by different natural laws.
      The story will also involve the reason why this world entered in touch with ours.

       
      What do you think about all that I said? Would you be interested in such a game? I have to say that everything is just a work of fiction made with my imagination. I do not want to offend anyone's beliefs.
      I want this to be a one man game. I have been working alone on it (this was my decision from the beginning) from art to effects to programming to music to sound effects to everything.
      I also have a youtube video HERE if you want to see the way the game moves and the way my music sounds.
      Please, any kind of feedback will be highly appreciated. If you have something bad to say, do it, don't keep it for yourself only. I want to hear anything that you don't like about my project.
       
    • By LimeJuice
      Hi, it's my first post on this forum and I would like to share the game I am working on at the moment.
      Graphics have been made with Blender3D using Cycle as a renderer and I am using Unity3D. It's a 2D game, one touch side-scrolling game for iOS and Android.
      Here some pictures, and you can have a look to the gameplay on this video :
      Feedbacks ?
      And if you want to try it, send me your email and I will add you to the beta tester list!
       
       








    • By Kirill Kot
      An adventure indie game with quests in a beautiful, bright world. Characters with unique traits, goals, and benefits. Active gameplay will appeal to players found of interactivity, especially lovers of quests and investigations.
      Available on:
      Gameroom (just open the web page and relax)
      AppStore
      GooglePlay
      WindowsPhone

  • Popular Now