Skip to content

SILDTeam/LEFA-GE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

DD.MM.YY
code Version 04.10.23

latest changes

03/10/23 and 04/10/23
much of the code was changed to support C89, now the window system, input system, cursor system can be included using C89
added glad_vulkan so that Vulkan API can be included in the project in the future

LITHE ENGINE FOR ALL

platform support

windows_ico 100% ⅃ linux_ico 13% ⅃ BSD_ico 0% ⅃


Basic Info

yes, it's another render being developed in this world, and to make matters worse being created with limitations.

This project is being done by a beginner programmer, who has never had experience in game programming before.

this code is just the beginning/studies/research of what this could be in the future
the code is totally poorly optimized

The advancement of the engine and the features in it are added according to what I need.

example : if I need fast loading of textures, this is an addition to the engine

and also, a lot of things are undocumented and lacking in explanation.


thank you ! third-party libraries

GLAD as the best loader of khronos libraries

LODEPNG as a great PNG encoder and decoder

HYPATIA mathematical library that I'm still studying, but it looks great

NUKLEAR for user interface, it seems to be very good.

TPE physics engine made in c99 - however I made an adaptation in c89.


Requirements to compile or run

System
Listed here are systems I tested the program on

Windows :

  • Windows XP SP3 x32 worked correctly
  • Windows 11 Home x64 worked correctly

Linux

  • Debian 12 x64 did not work, there were linking errors with X11

CPU
Minimum
I686 = Intel P6 with SSE2 - or Higher

I recommend not trying to compile for i386, since these processors are much older and out of date, the x32 base computers for the engine are those with i686 or higher as they are much more optimized for calculations and their cores and shifts are faster .

Of course the i686 is still very old, but the i386 is much more outdated compared to the i686 with the SSE2 set


RAM
Basic Engine

  • windows XP : 4 MB
  • windows 11 : 21 MB

DISC
the code is very small, of course there is very little, for now
500 kb Disc for source code


Render

  • OpenGL 2.0 or Higher
  • Vulkan ?

Problems

  • Even though the code is poorly optimized it is acting well, the problem is the cpu consumption due to the loop and the lack of control over the FPS limit
    the loop is acting at its full power without any limiter making it consume more cpu than it should

  • Inconsistent changes to the project without a defined structure

  • project being done by just one person, and still being new to coding

  • the project does not contain makefile systems, I don't like make but using other compilers instead of watcom is a pain

  • Currently, configuring the project for different architectures is horrible, and for different systems it is moderately smooth.

  • still stuck in the initial development process for 9 months

  • poorly organized file names and no creation


good side

  • is being written in C89 (ANSI C)

  • It seems to be very compatible with some different systems.

  • The purpose is to be light and portable

  • opens on my grandmother's computer, except that it uses OpenGL 2.1


more help and instructions