Making middleware

Discussion in 'Game Development (Technical)' started by Bad Sector, May 24, 2010.

  1. Bad Sector

    Original Member

    Joined:
    May 28, 2005
    Messages:
    2,742
    Likes Received:
    5
    I'm thinking about starting writing middleware. More specifically i'm thinking about starting writing a 3D engine focused on indie game developers (i mean focused on stuff i see used in most 3D indie games such as rich gui, wide hardware compatibility, win/linux/mac support and not focused on sm4, realtime gi and other stuff i don't generally see in indie games, not to mention that many free engines can do that and they're still not used).

    I like writing code and i believe i have a good technical grasp on designing engines (well, i've made quite a few - although i couldn't take advantage of them - and as they say, practice makes perfect :p), so this isn't a really difficult thing for me. Also i like working on stuff such as gui systems and documenting my APIs, which are things that i know most programmers dislike :).

    Thus my question isn't really technical but practical. Are people interested in such stuff or Unity single-handely destroyed the whole low-cost middleware market? And assuming that the answer is somewhat positive for me, what kind of stuff would you like to see?

    I haven't written a line of code yet for this (although i'm going to reuse a some of my existing code), so if its a lost cause i would like to know before starting :)

    As a side note, i'm burned out from game development or whatever. I just want to see some income from my coding efforts and the games i'm interested in making are taking too much time for that :).
     
  2. lennard

    Moderator Original Member Indie Author

    Joined:
    Jan 12, 2006
    Messages:
    2,390
    Likes Received:
    12
    That's a brutal market - if making money is your objective then run don't walk to another idea. Look at how many great engines are available for < $100 and even if you do better I, as a developer, am unlikely to switch because known entities like Unity are more likely to be around for the long haul when I need support.

    OTOH, if you can make a dedicated low cost tool I would be more inclined to pay up. A $20 particle editor seems like way less of a commitment on your part and, if I can get your output into my games easily (as sprites or as XML format) then I'm more likely to purchase. Include a bit of artwork and some canned effects for explosions, fire etc. and you've got my $.

    And right now? An inexpensive and decent Brief text editor is going to get my money also. That's a bigger market and less work than a 3d engine as well. Make either one of the above and pay a decent affiliate fee and I will also carry you on my website.
     
  3. virious

    virious New Member

    Joined:
    Dec 5, 2009
    Messages:
    23
    Likes Received:
    0
    To be honest, personally I like solutions which I can extend by myself. Unity is a great and very complex tool for any kind of creations, including games but it's kinda closed. I think that most of indie developers already have their toolkits prepared and it will be quite a challenge to encourage them, to change their software to your engine :).
     
  4. Adrian Lopez

    Original Member

    Joined:
    Sep 7, 2004
    Messages:
    489
    Likes Received:
    0
    There's just so many free and low-cost 3D engines out there that I don't think it's worth investing your time into developing one as a commercial product unless you can make it stand out somehow (which wouldn't be easy at all). If you're going to develop your own 3D engine, do so for your own edification or if none of the free or low cost engines available satisfy your requirements.

    In my case, what I want is an engine that works with the kinds of games I want to make, has friendly license terms, is not more infuriating to use than it is to develop my own, and is not so expensive that I can't afford it.
     
  5. Vino

    Vino New Member

    Joined:
    May 16, 2010
    Messages:
    345
    Likes Received:
    0
    Middleware is on the lowest end of the value chain. Just about anything else you can do will generate more revenue in the long term. You'd be better off as a contractor, in my opinion. Not that you shouldn't do it, you could make some money off of it, but you'll have to fight for it a lot more than if you were a publisher.

    edit: On the other hand, middleware has the lowest barrier to entry.
     
  6. Martini-562

    Martini-562 New Member

    Joined:
    Feb 16, 2010
    Messages:
    6
    Likes Received:
    0
    I'd suggest creating the engine and toolkit and make a game with it, giving public shoutouts about your process and your engine. Then later, when you game has been launched you can license you engine with some bragging rights.

    Look at how Overgrowth and Natural Selection 2 are doing it, both showing off their engine toolkits and promising an SDK after release. I wouldn't be surprised if they received a reasonable amount of wannabe or future indies willing to buy a license for their engine because they have seen what it is capable of.

    Granted, this approach relies heavily on the promoting and success of the game developed with the engine in question, but it also offers higher productivity for yourself, creating two products at the same time and using one to make production of the other easier.
     
  7. Bad Sector

    Original Member

    Joined:
    May 28, 2005
    Messages:
    2,742
    Likes Received:
    5
    @lennard:
    Yeah, the competition is a concern but as Vino mentioned it has a very low barrier to entry and i'm confident that i can provide a better solution than most of the engines you'll find in DevMaster's 3D engine list (for example). I've also thought about making some tools but i always thought of tools like particle editors as very engine specific. Unless i also include some library that can render and animate the particle systems.

    For the BRIEF editor... are people interested in text editors? I thought that this was a market well served from open source editors such as vim, emacs, joe, jed, jedit, and commercial such as slickedit, textmate, etc. Of course the same could be said for engines. I'll think about it since i'm planning to start writing non-game related utilities under another name (HazelCube). I'm actually finishing v1.0 of a realtime expression calculator for Windows and Mac OS X (and maybe Linux but i'm not sure if Linux people buy utilities), HazelCalc. I need to write the documentation, add copy-to-clipboard in the results column and make a nice icon :).

    @virious:
    Yes, i'm thinking about providing a solid system to write the engine on, not a Unity like system (although Unity's strength lies on its editor more than the engine).

    @Adrian Lopez:
    Actually i'm more worried about how people are going to learn about my engine than if i can make an engine that stands out. The crowd is so big that even if you stand out, the observer might be too away to notice you without looking for you :p.

    I'm not a fan of complex licensing. I'm thinking about a single license which would include source, unlimited titles and seats, etc. In other words, gimme the money, here is the code, make whatever you want with it :).

    @Vino:
    Contracting needs people to contract you and i don't know anyone nor i'm good at finding. Unless you mean stuff like rentacoder.

    I'm not sure what you meant about being a publisher.
     
  8. potan

    potan New Member

    Joined:
    Jul 11, 2009
    Messages:
    68
    Likes Received:
    0
    Bad Sector, how about making engine/middleware that will export to HTML5 canvas ? since that seems the new thing lately and i keep hearing about it.
     
  9. Bad Sector

    Original Member

    Joined:
    May 28, 2005
    Messages:
    2,742
    Likes Received:
    5
    I thought about that, but HTML5 doesn't have features needed by games (especially for sound). Also with IE not supporting most of it (and wont support it until the current versions of IE are not used anymore) while interesting, i'm not sure people will buy it.

    I might try it thought. I'll think about it, thanks.
     
  10. puggy

    Original Member

    Joined:
    Mar 10, 2005
    Messages:
    195
    Likes Received:
    0
    my 5 pence :D :

    If you want to make money and make something useful, make tools that would be useful that don't really have anything else out there like it.

    For example a 3D building maker. I'm not that good on the graphics front and i've dabled with some 3D programs but there all geared towards modelers, the easiest one i've seen is 3D canvas. I want to make a 3D model of a building but i want to do it simply. Think lego, i put some bricks down to build a base. maybe copy some of these structures that may be used repeatedly. Once done, click a button to 'cement' it together into one unit (to reduce the poly count).

    I'm taking buildings as an example but a tool like that could be used for many things, add new bricks to extend the possibilities. Basically a tool that takes something and makes it simple to do for area's that programmers might not be that good at, that isn't available or poorly done.
     
  11. lennard

    Moderator Original Member Indie Author

    Joined:
    Jan 12, 2006
    Messages:
    2,390
    Likes Received:
    12
    Google Brief Editor. They aren't cheap and the ones I've previewed are flawed to boot. There are a lot of programmers in the world and many of them have corporate managers who don't mind plunking down $99 for an editor if thats what their new programmer needs. If I didn't having a gazillion other things to do I would consider writing a cloud based Brief editor.

    VC++ 6.0 breaks in a bunch of ways under Windows 7 but since it still supports Brief emulation (sorta) I'm making do while I finish one of my last C++ programs before moving to web based programming. At that point I will be looking at Brief editors again or resurrecting an XP box to program on (where VC++ actually works).

    Particle editors are usually engine specific but with XML and bitmap output then many people will be able to use your software. Heck, just write that part before writing the rest of your middleware 3d solution...
     
  12. zoombapup

    Moderator Original Member

    Joined:
    Nov 25, 2004
    Messages:
    2,890
    Likes Received:
    0
    There are a bunch of small middleware apps I think that are worthwhile, mostly based around content generation.

    1) There's a talk by a guy at epic that did building generation using a pretty simple approach. That would make a great piece of middleware.

    2) Human head/body mesh generation for 3D stuff is definitely do-able, If you can afford to do some base mesh stuff to begin with.

    3) A very nice game UI library that allows you to run an in-game editor for the GUI would probably do well, its the main feature I quite liked from the torque toolset.

    4) Similar to 3 above, making webkit render into a texture and allowing the user to create HTML/CSS based UI's with it is also a good plan.

    5) A network "remote tweaker" would make good middleware. Drop it into a project, bind a few variables and have it run so you can literally remote tweak (I know at least one big game company that wrote a similar thing, seems like a good tool to me).

    Small specific things. Making them with good toolsets and professional support. I think that would work. A bit like GROME for instance.
     
  13. Bad Sector

    Original Member

    Joined:
    May 28, 2005
    Messages:
    2,742
    Likes Received:
    5
    @lennard:
    I've made an editor recently with WordStar bindings (i use Joe a lot on Linux which has WS keys). It was mostly for fun* and i wrote it for DOS but it was only a few months ago (despite being for the original IBM PC - i gave it to some people who like running software on ancient machines) so i have recent experience of writing an editor. Also i wrote the code in a way that i could port it to Linux (and other modern machines) later.

    This sounds an interesting project and is on the easy side of things. Except Borland's IDEs from the DOS era, which IIRC use a WS/BRIEF hybrid of key commands, i haven't used brief itself. I see there is a free version though so i might check that. I don't know of any programmer who really likes BRIEF though to pass an "acid test" so if i decide to do this (and i might) i would be glad if you tested it for me :)

    (*=text editors are one of those strange things i find fun doing, probably it has to do with me liking text processing)

    I'll think about the particle editor, its something i need to think UI-wise how it could be done :).

    @zoombapup:
    That's a *great* list, especially 5 and 3. 5 because it sounds relatively easy and 3 because i love GUI stuff :D.

    EDIT: i'm not going to start all of them at the same time, i'll think about these things first. I think i like the separate tools idea more than the middleware 3D engine, at least for the moment. Besides if i make the tools now i can always use them (and bundle them) with the engine later :). If you have any other ideas, shoot :).
     
  14. lennard

    Moderator Original Member Indie Author

    Joined:
    Jan 12, 2006
    Messages:
    2,390
    Likes Received:
    12
    I'm beat right now but happy to see your response. I will post a list of the most important features in the AM. It's a surprisingly short list and I will be very happy to help you get it right.
     
  15. Vino

    Vino New Member

    Joined:
    May 16, 2010
    Messages:
    345
    Likes Received:
    0
    I was just contrasting all of the sectors in the game industry. It looks like this:

    Publishing > Original IP > Dev. Capacity > Distribution > Middleware

    Middleware is probably the easiest to get into, original IP is the closest lucrative target but requires more work.
     
  16. hippocoder

    Indie Author

    Joined:
    Mar 18, 2008
    Messages:
    591
    Likes Received:
    0
    I'd be interested in a way to get C++ code working on the web and html5.
     
  17. tolik

    Original Member

    Joined:
    Sep 20, 2004
    Messages:
    1,407
    Likes Received:
    0
    Great middleware is always a left-over from production of games, not vice versa. E.g. "we had a great UI library for our game and decided to make a middleware out of it!" versus "we thought that games need a middleware for UI so we made one. here are all our 3 tests with non-working checkboxes when 3 windows hover on top of each other and scrollbars that can't reinitialize on the fly when windows are propagated with streamed in graphics. anyway, we think it's pretty useful so you'll sure buy it cause it's aimed at indies".
     
  18. Bmc

    Bmc New Member

    Joined:
    Dec 12, 2004
    Messages:
    1,088
    Likes Received:
    2
    Well, it's not something I'd be interested in but something that converts one language source to another would be appealing to some ... for example, ActionScript3 to Objective-C

    Not talking about compilation, just taking the source from one file and changing it to another language. Maybe flagging anything you couldn't translate.
     
  19. tolik

    Original Member

    Joined:
    Sep 20, 2004
    Messages:
    1,407
    Likes Received:
    0
    I'm interested in game generator, e.g. select a game genre and then perhaps a setting, theme and if you can please add graphics style (e.g. 2d or 3d). Should have a slider with the number of levels as well.
     
  20. jcottier

    jcottier New Member

    Joined:
    Jul 12, 2006
    Messages:
    1,385
    Likes Received:
    0
    It seems your slightly (humour) underestimated the amount of work you will have to produce before even getting 1 dev. to test your middleware. As a friendly advice: don't waste your time.

    JC
     

Share This Page

  • About Indie Gamer

    When the original Dexterity Forums closed in 2004, Indie Gamer was born and a diverse community has grown out of a passion for creating great games. Here you will find over 10 years of in-depth discussion on game design, the business of game development, and marketing/sales. Indie Gamer also provides a friendly place to meet up with other Developers, Artists, Composers and Writers.
  • Buy us a beer!

    Indie Gamer is delicately held together by a single poor bastard who thankfully gets help from various community volunteers. If you frequent this site or have found value in something you've learned here, help keep the site running by donating a few dollars (for beer of course)!

    Sure, I'll Buy You a Beer