Have seen this happen to many very cool looking games where people get through about half the game and then move onto another engine.
Why does this happen?
Will bge ever have developement to fix the problem and stop people from changing to another engine?
Lack of development
Performance
Publishing issues
Not so flexible workflow.
Cant export to android yet.
Historically, things like the game getting slow with a lot of animated objects and performance issues has been a major contributing factor.
In this case however, Moguri and Kupoman have been removing some of these roadblocks by way of bugfixes, animation culling, and a built-in LOD system (the last one not being in trunk yet but may come in for 2.69). Hopefully the enhanced shadow system (which might come in for 2.70) with its performance improvements will encourage people to stick with the BGE more as well (with goodies like cascaded shadow maps for large outdoor scenes).
Publishing? isnāt it supposed to be open source?
You can publish games - Dead Cyborg springs to mind.
I have little idea. As long as you know the engine limits (you can basically use it only to make a Windows/Mac/Linux game and it will use opengl over directx and the GPL can be little tricky commercially) thereās no reason. Even if you hit a brick wall with SCA system, with some python you can virtually do anything you might imagine.
I think for many BGE is something they prototype with, they create the assets that they need and see how they play together.
One phenomenon might also be the ease of use giving novice developers confidence to go for a big and commercial engine like UDK/Unity.
As far as I know, the UDK is appearing to be the choice for indie developers for very large-scale projects, perhaps what helps is the fact that the company behind the engine also makes its own game titles (how many published games have the company behind Unity made for example?)
Also, about Python and its possibilities, I recall that Agoose77 even made a library for use with the BGE that will allow your game to use KD-tree functionality to accelerate areas of logic like finding various objects in the scene, to think of it this way, this may have been possible due to how you can use the vast amount of non-game specific modules that come with Python. An engine that uses Lua script in contrast may need to have its own native implementation first because that project puts functionality for games first and foremost (ie. you need addon modules for such things as saving data to a file).
But still, if the BGE doesnāt work for you as of now, then most likely you will need to buy a commercial engine because thereās simply not much else out there when it comes to open source game engines (Urho3D being one of the few engines that look capable of being truly powerful sometime in the future).
Hopefully we can see development of the BGE pick up to where it can work out for the vast majority of people, but this issue is also shared by the general Blender project because thereās apparently a lot of developers who will not only leave Blender (and BA) for commercial solutions like Maya, but will also not even consider using Blender for any part of the pipeline (and if they donāt use Blender for any part of their asset creation, then they will definitely not use the BGE).
And does that Urho3D have any video tuts or a forum?
Most often people change engine because they think it will be easier to do it in the other engine. However, they regularly find that the āhigher performanceā engines require more work to make the same game.
Also, lack of motivation is one of the main reasons people stop making a game, not performance or anything else.
I have never come close to blenderās performance limit on my laptop (2.6ghz quad core, 8gb ram, Radeon 7670M), but then I spend quite a bit of time making sure my models and code work properly. Also, I donāt aim for super huge games.
Most of the time I see people change game engine simply because they donāt optimize it in the BGE, and think it will run faster elsewhere, at least thatās what happened to me(turns out it doesnāt work that way) lol :D. I also donāt see what the problem is with android and IOS export. From what I remember someone is/was working on android export(and thereās no licensing issues), and with IOS Iām not sure how many people will pay them $100+ to allow the game onto the app store anyway. Another reason Iāve seen a couple of times is that people try to make a mega huge AAA game in the BGE, with no game experience it runs really slowly, barely works, and looks/plays terribly, and they blame the engine and try to use one of those āproperā game engines. Too be honest though, I canāt see any reasons to not use the BGE, as long as you donāt expect to be able to make a game without putting alot of forethought into it. Thatā's my 2 cents
1.) Lack of manpower
2.) Lack of leadership skills and vision from decision makers
BGE is supposed to be a āborn winnerā. Just the hassles saved from asset importing/exporting made it a winner before start.
If we fail, we all know by heart who to blameā¦
I had to switch to unity for one of my projects for these reasons:
1- Game Engine performance started slipping, and BGE is pretty far behind when it comes to graphics.(which is important in a simulator)
2- Distribution is hard to do with blender, as far as I know, you must have access, or know someone that has access to the OS that you want to distribute to. Again unity makes this easy when compared to BGE.
3- Blenders organization of logic bricks is pretty bad when developing a larger game, and this means de-bugging is much harder. Crossed wires can give you a headache pretty quick
That said, I still love how quickly you can get a game idea āWorkingā in blender. You can see if the concept is good before spending weeks on making the āreal thingā. This makes blender the perfect thing for āhobbyistsā, of course there are users that are far from hobbyists, and can do some amazing things with BGE. If BGE would be made more efficient, and the graphics were upped some more, I could see blender being a more viable option for developers.
How is the process of assets importing from blender to unity3d? Is it pain or smooth? Thanks!
Asset management and importing is amazing in Unity. The workflow is very efficient.For those who make simple games bge is good but for something more ,no.
I really agree with kendrick.
Also, game publishing with blender is really bad.
Good luck guys! But as an advice from my experiece, if you are making somehing serious, it will be more efficient to further develop it on a dedicated engine, otherwise you will end up spending lot of time ,losing motivation ā¦and at the end switch the game and so on ā¦ I am telling this from my experience.
It is pretty hard to answer this question as these people usually are no member of this community anymore ;).
I tried various game engines in the past as well. I stayed with the BGE for a few reasons:
- most close to an all-purpose authoring tool (with the ability to create custom behavior)
- it is embedded in the 3D Modeller (Blender)
- very fast testing (just <p> and the game is running)
- no need to fiddle with several different applications (import export etc.)
- very visual approach to apply logic (1:1 relationship between visible objects and their logic) = very object orientated
- the option to create complex behavior with customized Python bricks.
These where the conclusions some years ago. I still miss a few things:
- not enough of an āauthoring toolā. Means it is missing high level abstraction support which makes it harder to use by artists.
- missing workflow. When it comes to a larger project there is no guide or support how to do that. Without prior knowledge there is nothing to tell what to do when to develop a game.
- the restrictive perspective at the GPL. This makes it nearly impossible to create a game with own licences AND technical protection of the delivered files. This is no problem if you do open source anyway.
What can Unity do graphics wise that BGE canāt? OR is it just a matter of having all the shaders ready made for drag and drop?
Personally I donāt think graphics are important in simulators. It is one of the oldest genres around and were very successful even on Amiga. Graphics might be important for something like cinematic or realistic style but style is always matter of choice and making photorealistic game on any engine will be very hard and translate into many times the work compared to another styles.
2- Distribution is hard to do with blender, as far as I know, you must have access, or know someone that has access to the OS that you want to distribute to. Again unity makes this easy when compared to BGE.
You really consider having to switch to Mac and Linux to have the versions out an issue? In game development process that is but one tiny bit of work compared to the whole thing. And even on Unity you shouldnāt just release on a platform on a press of a button just because you can. You will want to offer dedicated support to that OS and you canāt if you donāt have it or havenāt run the game on it once yourself.
3- Blenders organization of logic bricks is pretty bad when developing a larger game, and this means de-bugging is much harder. Crossed wires can give you a headache pretty quick
I moved away from SCA long ago. While that might be a step towards another engine sometime in the future going for python scripts is just mandatory in some extent. The ideal scenario is to use them in balance and many people seem to do it very well.
On Unity you wonāt get anything happening without writing code in lines (or drag-drop ready written code you will want to tweak yourself) so I consider an additional SCA system a strong plus for BGE.
If BGE would be made more efficient, and the graphics were upped some more, I could see blender being a more viable option for developers.
No. It isnāt about what BGE is and what BGE can do, itās what the users of BGE can do. I find it very unprofessional of an artist to blame his tools.
āāI find it very unprofessional of an artist to blame his tools.āā
Actually you are wrong. Try and do reflections in bge (donāt tell me about mirror and reflection input ), try and have a decent bloom.How about a tree/forest scene with animated trees? How about particle systems, optimized not just logic bricks that emit objects that are calculated separately and kills cpu in no time.
What about workflow? No real support for prefabs.
Simple. Blender is not for games, it is only for prototypes.
You quote me saying what is my opinion and you claim itās wrong? Opinions are opinions, not right or wrong.
Try and do reflections in bge (donāt tell me about mirror and reflection input ), try and have a decent bloom.
Define ādescentā? I think martinshās filter demo alone proves there are no limits to BGE. Bloom is cakewalk and you can just keep adding to it as much as you like.
Realtime mirror is a real top-tier feature found only in handful of engines. Not even Source engine could do it properly at launch. Still on BGE itās been done via videotexture and weāve seen some pretty impressive water shaders as well.
Anyway, for a developer to choose BGE for a game that apparently solely depends on eyecandy is just plain ignorance. Of course picking anything else than the best engine available would be begging for trouble. Artist not knowing his tools and still blaming them.
How about a tree/forest scene with animated trees?
Whatās so hard about animated trees? Surely you imply thereās not some (again) ready LOD system for you to drag-and-drop.
How about particle systems, optimized not just logic bricks that emit objects that are calculated separately and kills cpu in no time.
Who uses logic bricks for their particle system? I think youāre just coding things bad without trying to optimize yourself.
What about workflow? No real support for prefabs.
Now what does this even mean? Blender has the best workflow since you can do modeling, texturing, rigging, animating, level design, programming, everything under one software. Donāt even begin me on Unity where you have to piece together all the assets and debug their import-export issues to the end of the world and where the best level editor / modeling software will be Blender anyway.
A game developer blaming the lack of prefabs, come on. You are supposed to be the artist and actually make something yourself. Sure there isnāt an integrated asset store but you can still buy/download pretty much any model online and import it.
Simple. Blender is not for games, it is only for prototypes.
I strongly believe whoever is unable to complete a game on BGE will be unable to complete it on another engine.
-
Reflections > I was wrong. I should have said that there is no cubemap support in order to do fast fake reflections.
-
Bloom . martinsh did a great job on filters, but even though they are slow and not high quality. (because of lack of downsampling)
3.How would you animate those trees without huge performance impacts?
4.My bad again, but even with python there is a large cpu overhead, simply because the particles are not batched.
5.By workflow I mean a window showing your prefabs, being able to modify one and the rest of them just update. Being able to have them all over you project, not just linking/appending.
6.Indeed, its just your opinion.
Anyways, lets not start a war here. I am not willing to continue.