Upbge: UPBGE Development ideas

Created on 4 Mar 2020  路  22Comments  路  Source: UPBGE/upbge

  • [ ] Add more builtin uniforms to 2D filters (projection matrix, viewmatrix, a noise texture?, eevee utilTex for ambient occlusion filters? (maybe needs to delay the end of DRW_game_render_loop to have the textures available when filters are rendered)).
  • [ ] Add more 2D filter templates (Denoise, HBAO+...).
  • [ ] Restore libload if someone is interested to work on it.
  • [x] Implement smaa (I read a bit doc about it here: https://github.com/dmnsgn/glsl-smaa + lordloki branch.
  • [x] Remove WorldIpo/Replace with world->nodetree actions.
  • [x] Recover ObColor/Lights Ipos.
  • [x] Find why KX_GameObject.updatePhysicsShape sometimes needs several frames to update.
    Capture
    So this is not updatePhysicsShape the issue. This is that when you replace gfx, it needs several frames? Or when you add an object?
    A note was added to the release notes: bpy.context.view_layer.update() can be called before updatePhysicsShape() if we don't want to wait.

  • [x] Recover ReplaceMesh use GFX/use physics.

  • [ ] LOD fade?
  • [ ] Add Lerp to smooth mouseLook movements (does it already exists?)
  • [ ] Create a "game workspace" like "modeling"/"sculpting"...
  • [ ] Recover some upbge 0.1.9 to 0.2.4 commits ? See upbge 2.7 git log.
    NOTE: We already are at UPBGE 0.2.1 level. (Thanks lordloki!)
  • [x] Improve profile (remove some things from rasterizer and add it in other categories)

  • [x] Clean up unused actuators.

  • [x] Cleanup/reOrganize headers.... with source/tools.
  • [x] Cleanup lights files/code.
  • [x] Cleanup background code (zenith/horizon...deprecate...). Actually was already done i think
  • [ ] Cleanup python API.
  • [ ] Documentation (Thanks to lordloki for the work already done!).
  • [ ] Adapt UPBGE/testfiles repository to upbge 0.3
  • [x] UPBGE Python console
  • [ ] In physics tab, add an option to choose if we want to create the shape from evaluated mesh or original mesh.
  • [x] In physics tab, remove invisible option as we can already have the object invisibled in object tab > display as wire
  • [x] Disable old SoftBodies UI as they are not supported using blender meshes. The physics behaviour works but the meshes can't be deformed as the deformers code has been removed. EDIT: SoftBodies have been restored now. Thanks Youle!!!
  • [x] Restore python components templates
    .............
    List only editable by commiters, please.
development ideas

Most helpful comment

I did this start blend mock-up
image
This mock-up include a new Game Engine workspace

All 22 comments

I have 1 commit :D

but your list looks great.
only a few additions

  1. investigate using cycles or rtx to get at ATAA

  2. accelerate vertex skinning with a game optimized armature modifier

  3. a new blend type for alpha for water
    render 1 time opaque (to get SSR) - render again alpha - (to get at refraction)
    mix the two using Fresnel

-blur pass on alpha hashed materials

I'm not a committer and i don't have enough experience for helping in development and upgrade upbge but i have searching how the other softwares manage the LOD Fade effect and the unity methods seems well documented if this can help

https://docs.unity3d.com/Manual/class-LODGroup.html

workspace UI proposal for game logic

upbge_interface_proposal

I'd personally include the text editor in the opened things

I did this start blend mock-up
image
This mock-up include a new Game Engine workspace

OK, I don't really know how to activate eevee viewport shading to rendered from start. It always start in solid mode:
image

I like the first version without the file browser, but in solid mode. Else, I won't replace the point with a sun (but i don't really mind). I'm ok with the first version in solid mode.

Closing the issue to make it not visible from tracker list. As it is pinned this is not a problem as it is showed in Top part.

Concerning LibLoad, I get very low framerates and strange behaviour (some code not working, being applied at wrong times for example) when loading a file with the Game Actuator.

What would be the best way to completely jump to another .blend file at runtime?

Currently using a 0.3.0 build from April 17th

I tried to rework a bit on game actuator and we merged some work 13 days ago: https://github.com/UPBGE/upbge/pull/1191
@IzaZed : you can try with a more recent upbge 0.3 and if you have some bugs, you can report issues with the most simple test files you can (if possible without using logic nodes addon)

It's good in recent builds 馃憤
calling python LibLoad still results in an ACCESS VIOLATION, but I think that's a known one

LibLoad has been replaced with scene.convertBlenderObject/scene.convertBlenderCollection, I won't work on it. If someone wants to work on it, the old code is still there but as we have convertBlenderObject/convertBlenderCollection and that we can use bpy.ops.wm.append or import_mesh_ply or import objects from different files types or another .blends then convert it into gameobjects, it seems to me that libload is not needed anymore. For Async, we'll maybe try to find something but with the new system (not with libload unless someone wants to put his hands in this extremely complex code).

I think import alembic is multithreading and asynchronous. I have to check it

another thing to consider - the new intel threaded container type should help us potentially - maybe we can use it in a few places?

Why not the same design that 0.2.5 have?

OK, I don't really know how to activate eevee viewport shading to rendered from start. It always start in solid mode:
image

Why not the same startup design that 0.2.5 have? Because it's already well known and tested. From my experience teaching upbge, more tabs opened by default may cause confusion for the very beginners. Thanks for your work! :)

there will be a chance to have all deform modifiers working in UPBGE during the game? it would be a great help instead of animate all with armature and shape key which is a boring long procedure

deform modifiers are working during runtime in upbge 0.3

could we make a way to overide the texture a modifier is using with another image buffer?

for instance replace a static image with a video texture?

youle31 i mean UPBGE not with blender and eevee
i tried today with cast, lattice, also displace, they keep the modified shape but don't animate during the playmode

Hi @Trample-ingame ,
Currently, we have not planned new development for Upbge 0.2.5. At this moment we will put several easier fixes on it but all the new development will go over Upbge 0.3.
This issue is a collection of ideas for 0.3.

ah :( , so about 0.3 i want to say, i honestly think the old blender is more intuitive and blender internal /render was very fast to create materials with texture and set texture parameters at once in 10-20 seconds and get some very cool stuff, now in the new one i don't even know where to touch, if the property layout would had meant to be closer to the old blender it'd had be much easier to use it, i still don't understand why blender 2.8 it's like a now software with new icons that confusing me in search of tools, i tried sometime to use the new blender but i go back after 10 minutes, i want to switch to the new lite eevee render mode but it's like i have to learn a new software with scene and materials creation much longer with nodes :/ it's stressing, also i'm waiting to have 0.3 much more stable,
i don't know how easy it is but you could improve the conversion of materials and texture to cycle to reproduce the exact same effect i have in blender internal when for example i set normals, alpha, influence color and hardness to a single texture, i tried it and the result was horrible, at least i wouldn't have to rebuild all materials of my games, it would be so stressful

ah :( , so about 0.3 i want to say, i honestly think the old blender is more intuitive and blender internal /render was very fast to create materials with texture and set texture parameters at once in 10-20 seconds and get some very cool stuff, now in the new one i don't even know where to touch, if the property layout would had meant to be closer to the old blender it'd had be much easier to use it, i still don't understand why blender 2.8 it's like a now software with new icons that confusing me in search of tools, i tried sometime to use the new blender but i go back after 10 minutes, i want to switch to the new lite eevee render mode but it's like i have to learn a new software with scene and materials creation much longer with nodes :/ it's stressing, also i'm waiting to have 0.3 much more stable,
i don't know how easy it is but you could improve the conversion of materials and texture to cycle to reproduce the exact same effect i have in blender internal when for example i set normals, alpha, influence color and hardness to a single texture, i tried it and the result was horrible, at least i wouldn't have to rebuild all materials of my games, it would be so stressful

  • I would finish your current projects in upbge <= 0.2.5 and then try playing with eevee,

it's actually very easy to use - the principled node can describe almost any material.
if you don't get hooked on it 0.2.5 repo exits if you want to do PR for it. (pull requests)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

joelgomes1994 picture joelgomes1994  路  7Comments

cederom picture cederom  路  7Comments

denicolas picture denicolas  路  4Comments

joelgomes1994 picture joelgomes1994  路  4Comments

RomStef picture RomStef  路  7Comments