MBM Documentation Release 3.1.F

MBM Documentation Release 3.1.F

MBM Documentation Release 3.1.f Michel Jul 03, 2021 Contents: 1 Mbm Engine 3 1.1 Another Game Engine!..........................................3 1.2 Which version should I get?.......................................4 1.3 Looking for binary?...........................................4 1.4 Main Libraries And Status........................................4 1.5 Games made with mbm.........................................5 1.6 Quick start guide.............................................7 2 Scene 35 2.1 Main Scene’s flow............................................ 35 2.2 Scene’s functions............................................. 36 2.3 Example of Scene............................................ 38 2.4 Example of Scene class style....................................... 39 2.5 Example of Scene using coroutine.................................... 40 3 Table mbm 45 3.1 World................................................... 46 3.2 mbm................................................... 54 3.3 Texture.................................................. 69 3.4 Shader.................................................. 73 3.5 Miniz................................................... 77 3.6 Aes.................................................... 78 3.7 Useful.................................................. 79 3.8 Android.................................................. 84 4 Table camera 87 4.1 Camera 2D methods........................................... 87 4.2 Camera 2D attributes........................................... 90 4.3 Camera 3D methods........................................... 91 4.4 Camera 3D attributes........................................... 96 4.5 User data acknowledgment........................................ 97 5 Table font 99 5.1 font methods............................................... 99 5.2 font methods with editor features.................................... 102 5.3 Creating a font programmatically.................................... 105 i 6 Table gif 109 6.1 gif methods................................................ 109 7 Table line 113 7.1 line methods............................................... 113 7.2 line shader................................................ 119 8 Table mesh 123 8.1 mesh methods.............................................. 123 8.2 Creating a mesh programmatically.................................... 124 8.3 Importing mesh.............................................. 130 9 Table meshDebug 133 9.1 Primitive options............................................. 133 9.2 static methods.............................................. 137 9.3 meshDebug methods........................................... 139 10 Table particle 169 10.1 particle methods............................................. 169 10.2 particle attributes............................................. 186 10.3 Creating particle programmatically................................... 187 10.4 Saving particle to a binary file...................................... 190 11 Table render2texture 193 11.1 render2texture methods......................................... 193 12 Table renderizable 203 12.1 Renderizable methods.......................................... 203 12.2 Blending................................................. 213 12.3 Animation................................................ 216 12.4 Physics.................................................. 224 12.5 Renderizable attributes.......................................... 225 12.6 User data acknowledgment........................................ 227 13 Table shader 231 13.1 shader methods.............................................. 231 13.2 pixel shader................................................ 252 13.3 vertex shader............................................... 304 14 Table shape 307 14.1 shape methods.............................................. 307 15 Table sprite 317 15.1 sprite methods.............................................. 317 15.2 Creating a sprite programmatically................................... 318 16 Table text 331 16.1 text methods............................................... 331 16.2 text attributes............................................... 333 16.3 Creating a text programmatically.................................... 333 17 Table texture 335 17.1 texture methods............................................. 335 17.2 Creating a texture programmatically................................... 336 ii 18 Table tile 339 18.1 tile map definitions............................................ 339 18.2 tile methods............................................... 341 18.3 tile object................................................. 351 19 Table timer 353 19.1 timer callback signature......................................... 353 19.2 timer methods.............................................. 353 19.3 timer attributes.............................................. 357 19.4 User data acknowledgment........................................ 357 20 Table vec2 359 20.1 vec2 methods............................................... 359 20.2 vec2 attributes.............................................. 370 20.3 User data acknowledgment........................................ 370 21 Table vec3 373 21.1 vec3 methods............................................... 373 21.2 vec3 attributes.............................................. 383 21.3 User data acknowledgment........................................ 383 22 Table audio 385 22.1 audio Methods.............................................. 385 23 Editors 389 23.1 File Format................................................ 389 23.2 Sprite Maker............................................... 389 23.3 Font Maker................................................ 390 23.4 Particle Editor.............................................. 395 23.5 Physic Editor............................................... 396 23.6 Shader Editor............................................... 399 23.7 Scene Editor............................................... 400 23.8 Asset Packager.............................................. 406 23.9 Tile Map Editor............................................. 406 23.10 Texture Packer Editor.......................................... 409 24 Modules 413 24.1 What is a Module?............................................ 413 24.2 Parsing OBJ wavefront.......................................... 414 25 Module box2d 421 25.1 box2d Methods.............................................. 422 25.2 box2d Body............................................... 436 25.3 box2d Joint................................................ 458 26 Module ImGui 499 26.1 Begin / End methods........................................... 499 26.2 Calc methods............................................... 512 26.3 Capture methods............................................. 513 26.4 Color methods.............................................. 514 26.5 CreateContext.............................................. 516 26.6 DestroyContext.............................................. 516 26.7 Flag / Enum............................................... 516 26.8 General methods............................................. 525 26.9 Get methods............................................... 527 iii 26.10 ImDrawList................................................ 542 26.11 Is methods................................................ 563 26.12 Save / Load methods........................................... 574 26.13 Log methods............................................... 575 26.14 NewFrame / EndFrame.......................................... 577 26.15 Open / Close methods.......................................... 577 26.16 Pop methods............................................... 578 26.17 Push methods............................................... 580 26.18 Render.................................................. 583 26.19 Set methods............................................... 583 26.20 Show methods.............................................. 594 26.21 Style methods.............................................. 596 26.22 Text methods............................................... 602 26.23 Widgets.................................................. 603 27 Module lsqlite3 651 27.1 Asset................................................... 651 27.2 Editor................................................... 656 27.3 Examples................................................. 656 28 Indices and tables 659 Index 661 iv MBM Documentation, Release 3.1.f Table of Contents • Mbm Engine – Another Game Engine! – Which version should I get? – Looking for binary? – Main Libraries And Status – Games made with mbm * Tower defense * Space ship combat * Puzzle from photos – Quick start guide * Getting the source code * Build for Windows * Binary for Windows * Build for Linux * Build for Android * Binary for Android * Command line usage Contents: 1 MBM Documentation, Release 3.1.f 2 Contents: CHAPTER 1 Mbm Engine MBM is a given name to a graphics engine which provides basic and essential resources to develop games or graphics applications 2D or 3D. For now, is possible to develop games for Windows , Linux , and Android . The intention is to provide the minimum necessary for game development or graphics application using minimal dependencies. The engine is written in C++11 language using OpenGL-ES on its core and LUA as a scripting language. Note: Although there is an effort to migrate the whole project to C++11 still there is a lot of mixedC code and maybe is not the best

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    674 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us