Godot hits version 1.1 (was hits 1.1 RC3)

I would be interested in seeing a side by side, BGE VS godot, same scene and logic,

One cannot do this to produce anything sensible. It is possible to compare specific scenarios which stress particular aspects of each engine, but even then the test is highly dependant upon what you choose to test. It is far more meaningful to profile the ease of use of each engine, and investigate specific scenes if you experience frame rate loss at present,

Well for instance, how many polygons can it draw?

how many rotating using logic, how many rotating using godot script etc?

really I just want to know how much better the render is, as it is the only thing I have issue with currently with the bge.

Again, still quite subjective. The drawing of polygons isn’t usually the bottleneck, instead it will be the order and means by which the geometry and material information is fed to the GPU, how often that occurs, and how that is handled by the GPU. All the aforementioned parameters change with different scenes, different GPUs and other factors.

The long story short is you cannot profile the speed at which a single operation takes to occur and scale that across the board. As game engines become ever more complex and system architectures ever more intelligent, there is not that consistency around to be useful.

I’d be surprised if you’re finding the renderer is a bottleneck with the scenes that I’ve seen you work on, because I haven’t noticed that you use shaders / high geometry such that it would represent a cause for investigation.

Had a go at implementing collectables in my project, and let me tell you that the incomplete documentation won’t help here.

I actually took a while in chasing down the incorrect ways to do it when I found out that the solution is easier than you think. Godot in general does collision events a bit differently from a traditional game engine, but once you find out how to do it, it becomes a lot easier and even opens up a lot more possibilities in other areas of game mechanics (the correct solution is learning how to use the events window to enable the use of events available for the node.


You will also notice that the code editor in Godot is far superior to the Blender text editor, I’m spending a lot less time chasing down goofy syntax errors and spending more time correcting real errors. I’m also certain that this might also be better than the default code editing environment that comes with Unity as well (I’ve heard many horror stories about it over the years).

It’s basically like having the equivalent of an IDE right inside the engine, and I love not having to deal with compilers. I have also noticed that it also has extensive particle system functionality that you can get up and running rather quickly (compared to the BGE which ‘almost’ got a particle system at one point, but ultimately no dice).

One thing I am also noticing, threads about alternative engines on the BGE forums tend to be pretty active and full of excitement while a lot of the hot threads on the BGE itself is filled with rundowns on the limitations, state of the code, and whether it will even remain in Blender (and is indeed a possible sign that the userbase really is dwindling).

I have a silly gpu, and high desktop resolution, also I screencast the bge,
These all eat rasterizier like crazy, which I assumed was part of rendering.

Gameplay test update


Doesn’t look bad considering it’s only my third day, that along with this being my first 3D engine ever that’s not the BGE :slight_smile:

Yes, those are particles in that shot, I’ve also been making gem objects as collectables since my very first game 12 years ago.

EDIT: Another good thing, an issue I reported to the tracker on github was fixed within 3 hours, you just can’t get that level of promptness when reporting BGE issues (where it feels like you’re talking to a wall at times).

Hi I Hope you are having a good day.

I have just downloaded godot Win32exe binary but an error occurs when I try open the file is there a special way of runing godot.
I know this is a blender forum. but I have no were else to go. I did not want to join the godot forum before trying out the engine.

Thanks, Any Help and Solution will be greatly appreciated.

Now i must say, it does have a potential! But really, when you have a lot of characters with armature, is it gonna slow down, considering, that its 2d part is more advanced!?
@Ace Dragon
I should ask on the forums about hardware instancing, since its speculating… Btw, your images are inspirational.

I think Smoking_mirror is right, BGE as enough features to create serious games. Its weak point is its stability and calculation speed. It’s full of bugs that can lower the experience we have with it. Fixing the bugs without thinking about new feautures would be the best thing to do now. Then, it would be nice to make it more powerful, to making it faster for calculation (especially for light calculation). New features sounds more gadget now.

Thanks, I just got moving platforms in, I have also noticed that Godot has per-object continuous collision detection which none of the BGE devs. seemed interested in implementing.

The truth is, it seems like features that are difficult to get implemented in the BGE come by easily in Godot.

Hey, can you make a quick tutorial Ace?

Adding items from bge, making them rigid body, and then assembling and enabling contentious collision detection etc?

I would love to use Wrectified’s cookbook to make a cross-platform version of the game, and my frame rate is 60 fps (has to be)
with bge to avoid the problems caused by not having CCD , so I could conceivable reduce it to 30, and save many CPU cycles etc,

Do they use have GPU based physics yet or?

I have had to work around my work arounds of work arounds, and something clean that is fixed if broken
sounds nice for a touch.

how are events handled?

Can I trigger script via events the same way?

The documentation page has tutorials and general guidelines/tips, GDscript specifications and types ect…

Let me warn you though, if you’re still having trouble with Python (which is generally regarded to as an easy language), then picking up GDscript is going to be difficult. It has numerous concepts for one thing that you will need to learn that you didn’t need with Python and the way you do some game mechanics in Godot is a bit different.

That’s not to say that getting started with GDscript is difficult It’s easy to get to where you have basic movement and the like, but mastering it to give something like your ultimate vision for Wrectified is not going to be an easy task (and to note, doing something like your game in any language and any engine is not something you’ll have in a week or a month).

Have not met a problem I could not solve yet now in the bge (except shaders)

It’s like moving to mars though man, I played with blender to learn the bge, I had trouble adding a sphere with Godot…

That’s because it’s not a 3D modeler, it’s an engine where you import everything just like you do in Unity and Unreal.

Download the ‘better collada exporter’ from the Godot website and place it in the Blender addons folder. After exporting the .dae file, select the ‘import 3D scene’ option from the import menu.

Also note that the engine works by attaching larger level scenes to subscenes containing assets and components (brought to the main scene as instances), if you don’t get your head on using this methodology in a proper manner, you’re not going to be able to output a full-sized game.

Ha ha ha, I have been designing wrectified this way anyway, everything is to be built of modules, :wink:

Edit - after appending in a asset, the rest of the workflow made sense, still poking around physics though

Have not met a problem I could not solve yet now in the bge (except shaders)
It’s like moving to mars though man, I played with blender to learn the bge, I had trouble adding a sphere with Godot

Eh… its just different, the layout…i would say its no harder than BGE, but since your accustomed to BGE it will be wierd, a “scene” in GODAT is not like the BGE. But it can be. You can have 3dspatial with 2d spatial on top of it…You do some pretty heavy rigid body stuff in BGE BPR, and I dont know how well that would go over. To me it was different as you can add a collision box as a node, and actually that itself can be a “scene” in godot if you want it to. Getting the grasp of what they call “scenes” is wierd the Vectors were a little tricky to me too. GDScript is somewhat easy also, but things have to be run in Processes(), Too me its like our module mode. You can assign your variables outside of the process, at what I would call Module level, but you need to run physics and stuff inside the process, and you need to tell it which process, (process(delta) or whatever). Its probably a more professional way, just different to us. Anyways this thread has kind of become a BGE vs GODOT thread. If you wanted to learn something else thats “easy”, and has a “one click to export to android button” Thats probably your best way to go. But dont expect it to be easy in a sense of “since I know BGE, I got this in one day”. I made a simple joust game in BGE and then duplicated it in Godot. It will work, but its more difficult than a “Convert to GODOT button.”

So I talked about how collision events can be created in Godot for physics bodies, but you need a different method to create collision filters for raycasts without resorting to collision layers.

Take this code that you would attach to the raycast object


if is_colliding():
        
    var ob = 0
    
    ob = get_collider()
    var target = get_path_to(ob)
    var node = get_node(target)
    var name = wheel.get_name()
        
    if name.begins_with('Platform'):
                #do stuff#   

  • The first line is pretty straightforward, is checks if the ray is detecting an object
  • In the third line, we get the collider
  • At first the information might seem useless (you’ll get something like RigidBody:540 or something, but this is actually a special data type known as “Node” that we can use to eventually get the real name of the node
  • Now in the fourth line), we get the relative node path, this makes sure we have a valid path
  • Fifth line; now we can input the correct path so we get the correct node
  • Sixth line; now that we have the node, we can obtain the actual name
  • Seventh line; use a string operation to only make certain mechanics work when the ray is hitting certain objects

Just wanting to put this out there in case you pull your hair out wondering how to do the equivalent of the ray sensor property filter.

Just made my own continuous collision detection idea…



import bge
from bge import render
from mathutils import Vector
def main():


    cont = bge.logic.getCurrentController()
    own = cont.owner
    offset=own.localLinearVelocity*.05
     
    offset= own.worldPosition + (own.worldOrientation*offset)
    ray = own.rayCast(offset,own,0,'',0,0,0)
    render.drawLine(offset,own.worldPosition,(1,0,0))

if ray[1]!=None:
    ##you hit something




main()


Hey Guys,
I have now finished my Godot Export Manager. It can be downloaded from my github page.
The export manager needs to have the Better Collada Exporter to be installed. I would recommend to download the one from my repository. I have made a few fixes to it. It had some issues with animations and packed images.

So here is the video of the export manager.

Here is the link to github:

And here is a link to a written tutorial:

@AceDragon
since you are testing godot alot lately. I would appreciate your opinion. Tell me if you find some bugs.