Hi, Let me introduce a bit more the purpose of this request for all people that don’t know what UPBGE is.
During last BGE meeting, around one and half year ago, it was established, at least, 3 ways to follow regarding the blender game engine. To summarize, one of them was to adapt the blender code to embrace existing external engines (under this way are Armory, Panda, Godot, etc), another one was to create a new internal and tiny game engine (no one is working in this way at this moment) and the last one was to refactor the BGE progressively to reach a new up to date standard (UPBGE is a project that follows that last way). Then, taking into account, that the current workflow that we were conducting to modify the BGE (through developer.blender.org differential diff/patches) was so slow for a big refactor as this one it was done a new branch/fork in github (https://github.com/UPBGE/blender). During this last year a great effort has been put by UPBGE/BGE developers to refactor the code with that goal in mind. Now our purpose is to try backporting all the new changes and refactors into the 2.8 branch (or a parallel one) to bring the BGE to a new life (and successful one, we hope) life. :-) Here below there is a summarize of main modifications done to BGE (check release notes in https://doc.upbge.org/ for a deeper explanation): - *Main Refactors*: o The event system was totally reworked. Now there is a Device folder containing all device related code (keyboard, mouse and joysticks). With this refactor we can assure, at last, that the game engine won’t lose events even with low-very low fps anymore. Additionally, the joystick part follows the new database standard defined by steam to homogenize the joysticks nightmare. o A new common launcher system was developed. It was done to reduce duplicated code between embedded player and external player. o New FBO renderer using GPU_framebuffer / GPU_texture. Off screen rendering consists in render the scene directly to an off screen (FBO with color texture and depth texture) and at the frame end render the off screen to screen. Internally a lot of things are improved and simplified like the 2d filters, render textures and soft particles. o Multitexture mode was removed to fulfil with new OpenGL 3.3 & on goal. o Vertex Arrays + Display lists were removed too. At this moment, we have only VBOs. The VBOs were improved a lot to overpass the Vertex arrays + Display List performance. o Refactor of Rasterizer OpenGL calls. The goal of this refactor is to reduce the opengl calls outside of Rasterize module. o New 2D Filter python Proxy. The user can now access to the filters from the scene in python from a filter manager. o Variable vertex memory size implemented. A new system with template vertex class is used internally. This system allows to reduce memory usage by reducing the number of UV layers used, in the same way the mesh transformations are optimized. o Triangle rendering. All the meshes are rendered as triangle now. o Lots and lots and lots of more tiny refactors and cleanups. You can check them in the release notes. - * New features implemented*: o Geometry instancing o Parallax mapping o Subsurface Scattering o Realtime Cubemaps (including reflection and refractions) o Python components o Mipmap per texture o GLSL Text Highlighting o New LOD system o New movement Sensor and Joystick Vibration actuator logic bricks o Joystick Sensor adapted to Xbox360 joystick standard. o Constant material values o Geometry shaders o Ray sensor mask o Update of bounding box in realtime o New python console interpreter can be launched in-game o Soft particles (also called Depth transparency) o Static shadow rendering o Sky background render o Material Texture and lamp texture LOD bias o Access to Vertex UV list o Access to collision contact points o Access to additional properties of material and texture in realtime o ImageRender and ImageMirror HDR o Physics shape replacement and duplication o Physics suspend and resume o Access to Text Dimensions o Access to python polygon and vertex o Debug bounding box and armatures o Percentage closer filtering shadow o Material switch o Multiple vertex color per layer o World exposure and range o And a few additional ones. You can check in the release notes. - *Work on-going at this moment*: o GPU Hardware Skinning o Planar reflections o Audio effects (revert, echo, etc) o Deferred rendering o UV Scroll o Static Batching o SCA refactor and cleanup. o And a lot more. - *BugFixes*: o Lots of bugs (around 40-50) reported in developer.blender.org fixed. Also fixes for bugs not reported. For contact and discussion the UPBGE team are composed of Official Blender BGE devs: - panzergame (Tristan Porteries) - lordloki (Jorge Bernal) And only upbge devs: - TwisterGE (Diego Lopes) - youle (Ulysse Martin) Regards, lordloki El 13/11/2016 5:24 p. m., "tristan panzer" <[email protected]> escribió: > Hello, > > I propose to everyone interested in BGE to talk about a possible > replacement of BGE by UPBGE (upbge.org) this week on IRC. The discussion > is > to know if UPBGE can be choose, what change will be needed for BGE related > to 2.8 viewport, and more… > > The team will be here all the week after 21 GMT in #blendercoders, and > frequently in #upbgecoders. > > Tristan. > _______________________________________________ > Bf-committers mailing list > [email protected] > https://lists.blender.org/mailman/listinfo/bf-committers > _______________________________________________ Bf-committers mailing list [email protected] https://lists.blender.org/mailman/listinfo/bf-committers
