Page 1 of 4 123 ... LastLast
Results 1 to 10 of 34

Thread: Brtech1

  1. #1

    Talking Brtech1

    I've wrote a Quake3/idtech3-compatible engine (in most all things except API-wise, so it's not API-compatible) in the last month ago.

    It's written in ObjectPascal completely from scratch (compilable with Delphi and FreePascal for many targets including Windows, Linux, MacOSX, Android and iOS). The engine is fully compatible with the Quake3 file formats, but it doesn't use the OpenGL fixed pipeline, instead it uses a 100% complete plain GLSL-based render pipeline (which's fully OpenGL ES >= 2.0 and Desktop OpenGL >= 3.0 compatible), where the rendering architecture is a mix between forward rendering (for to be Quake3-render-concept-compatible) and deferred lighting a ka light pre-pass for future feature extensions.

    All geometric data (maps and models) are stored in static VBOs, so all vertexdeformations/textureanimations/etc. are calculated directly only on the GPU itself (including autosprite/autosprite2 deformations!), so the CPU has nothing to do in this context, except to do the PVS+FrustumCulling.

    At MD3 models with vertex animations, all frames are stored in the same static VBO, where the vertex attribute pointers are pointing to different start vertex index positions, aPosition+aNormal+... for the the source interpolation frame and aPosition2+aNormal2+... for the target interpolation frame including a uInterpolation uniform float variable to interpolate between them directly on the GPU per GLSL vertex shader.

    IQM model support is planned ( http://lee.fov120.com/iqm/ ).

    The whole sound system is also self-implemented, which's based on my own old sound code stuff from the FoembJump Android framework.

    Test binary: http://rootserver.rosseaux.net/stuff/BRTECH1.zip but you do need the original Quake3 (demo or full version) data for it, because the BRTECH1.exe binary searchs for the baseq3 (or baseoa if you have only OpenArena) subdirectory with the .pk3 files. But a small warning for OpenArena maps, it seems for me that, these are compiled wih a buggy q3map/q3map2 map compiler version => Z-Fighting on curved patch brushes. But on the original Quake3 maps this problem doesn't exist.

    I'm searching for artists (quake3 mappers, quake3 material-shader-writers, quake3 texture-artists and quake3 MD3/IQM modellers) now for to doing the first real own demonstration indie game with it. If you do know someone for so such job things, then contact me please

    And now some videos (P.S. door logics aren't implemented yet, so I've disabled the collisions with doors):





    BeRo
    Last edited by BeRo; 22-09-2012 at 01:36 PM.

  2. #2
    Hi Benjamin,

    wow, Very impressive ! And the implementation of the vertex manipulation and textures stuff on the gpu might be very cool ! It is the case for all the platform (ios ?) ?
    Let us know the advance of your project on it !
    - I'm not aware of quacke like stuff : is there some editor to use ?
    - Have you a licence plan for this engine ?

    cheers !

  3. #3
    PGDCE Developer de_jean_7777's Avatar
    Join Date
    Nov 2006
    Location
    Bosnia and Herzegovina (Herzegovina)
    Posts
    287
    Wow, this is amazing. I work (kind of still am) on an engine which also provides support for Q3 assests (maps, models and such), but I guess you beat me to it
    Great work. I'm interested to see what kind of a game you might develop with this.
    Existence is pain

  4. #4
    Wow Benjamin...just wow
    I'm awestruck mate, kudos!!

  5. #5
    Quote Originally Posted by Vinzvega View Post
    Hi Benjamin,

    wow, Very impressive ! And the implementation of the vertex manipulation and textures stuff on the gpu might be very cool ! It is the case for all the platform (ios ?) ?
    If the PowerVR SGX GPU in the iPhones supports at least 13 shader vertex attributes (because for the on-the-GPU-interpolation of animated models), then yes, because the OpenGL ES 2.0 specification says just 8 vertex shader attributes as minimum, but most all current mobile GPUs (PowerVR SGX 540, Mali400MP, Tegra2&3, Arendo205, etc.) in android devices are supporting at least 16 vertex shader attributes. But for example the OpenGL 2.0 capable GPU in the Raspberry PI is a OpenGL 2.0 capable GPU with the absolute minimum OpenGL ES 2.0 specification data (so only 8 vertex shader attributes as minimum etc.).

    Quote Originally Posted by Vinzvega View Post
    Let us know the advance of your project on it !
    - I'm not aware of quacke like stuff : is there some editor to use ?
    - Have you a licence plan for this engine ?

    cheers !
    For maps: GTKradiant http://icculus.org/gtkradiant/ but only with the GPL full-opensource variant (where commerical usage isn't a problem, at least here in germany), because the old proprietary half-opensource/half-closedsource variant disallows commerical usage without a license from id Software.

    For models: Blender, 3DSMax, etc. the models must be exported and converted then to the MD3 or the newer IQM file format.

    License plan: I want to do myself a own game with it, before I'll start licensing with a unity-like freeimum model (here including a opensource dual license model, so the engine source code will be available under a dual-commerical-license-suitable opensource license, like idtech1-idtech4), so for free games => no cost, and for non-free games => small revenue participation (20% to 30%) and no high one-off payment in advance, so the planned licensing will mostly complete risk-free for the licensees.

    Quote Originally Posted by de_jean_7777 View Post
    Wow, this is amazing. I work (kind of still am) on an engine which also provides support for Q3 assests (maps, models and such), but I guess you beat me to it
    Great work. I'm interested to see what kind of a game you might develop with this.
    Thanks

    As said, I want to do a game with it. A futuristic cyberpunk first person shooter or something in that game genre direction, but I do need still artists for this (for game detail concept design, maps, models, textures and material shaders). Code, SFX and music I'm doing myself. So i am looking for artists.

    Quote Originally Posted by paul_nicholls View Post
    Wow Benjamin...just wow
    I'm awestruck mate, kudos!!
    Also thanks
    Last edited by BeRo; 24-09-2012 at 05:46 AM.

  6. #6
    PGD Staff / News Reporter phibermon's Avatar
    Join Date
    Sep 2009
    Location
    England
    Posts
    524
    Excellent! I'm so happy to see another well developed engine surfacing, keep up the good work!

    I also support IQM and IQE in JenJin, blender users looking for an animated 3D format should give it a go, the IQE exporter is well maintained across blender versions.
    When the moon hits your eye like a big pizza pie - that's an extinction level impact event.

  7. #7

    Now with improved virtual-3D stereo sound engine code und underwater

    Now with improved virtual-3D stereo sound engine code und underwater (physics, sounds and post process screen effect).

    The whole sound engine code is bigger than the main renderer core code now.

    The sound engine do support true 3D sound spatialization now (including ear-distance-delays, listener-to-object-angle-and-distance-frequency-filtering, etc.) and I'm working on full HRTF support as a additional high-quality-3D-sound-spatialization-work-mode.

    The underwater sound filter effect is a 4-semitones-down-pitchshifter (without FFT/IFFT, very-short-delayline-based with a hamming fade window functon, only circa 20 code lines only), 300 Hz 6dB one pole low pass filter, 500-1000Hz boosting 3-band quadpole 24dB EQ and reverb.

    It supports also the doppler effect now (air and underwater).

    The most all sound engine code is 32bit integer-only (16.12 bit fixedpoint with 4 bit headroom, so it is 20.12 bit at the end) except at the initialization code parts for lookup tables, float -> fixedpoint constant value calculations, etc.

    And here the new video. And the BRTECH1.zip at the URL in my start post in this thread is also updated.

    Last edited by BeRo; 27-09-2012 at 02:50 PM.

  8. #8
    PGDCE Developer de_jean_7777's Avatar
    Join Date
    Nov 2006
    Location
    Bosnia and Herzegovina (Herzegovina)
    Posts
    287
    Wow, you sure have put a lot of effort into your sound engine, though I guess this is expected from you
    Existence is pain

  9. #9
    PGD Staff / News Reporter phibermon's Avatar
    Join Date
    Sep 2009
    Location
    England
    Posts
    524
    That's utterly awesome, you really know your stuff!
    When the moon hits your eye like a big pizza pie - that's an extinction level impact event.

  10. #10
    this is awesome , how's the engine code is it procedural (which is expected) or OOP

Page 1 of 4 123 ... LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •