ported the University CGI demo from WINDOWS + GLUT + GLEW + GLU + OpenGL 4 to LINUX WAYLAND + EGL + GLES 2 with minimal cuts

This commit is contained in:
beno
2025-07-03 01:26:25 +02:00
commit 6c125fb35e
85 changed files with 91688 additions and 0 deletions

64
Makefile Normal file
View File

@@ -0,0 +1,64 @@
include external.mk
TARGET=Main.exe
OBJECTS=Main.o
GL_STUFF_D=${PWD}GL_STUFF/
GOU=${GL_STUFF_D}OBJECTS/UTILS/
GOS=${GL_STUFF_D}OBJECTS/SCENE/
GOE=${GL_STUFF_D}OBJECTS/EFFECTS/
GOC=${GL_STUFF_D}OBJECTS/CURVES/
GL_STUFF_COMPATIBILITY_OBJECT=${GL_STUFF_D}GLES_3_1_compatibility.o
GL_STUFF_UTILS_OBJECTS=${GOU}ClockIterator.o ${GOU}OnlyOnce.o ${GOU}ResourceCache.o ${GOU}ShaderMaker.o
GL_STUFF_SCENE_OBJECTS=${GOS}Camera.o ${GOS}Instance3D.o ${GOS}InstancesLoader.o ${GOS}Model3D.o ${GOS}ObjectInstance.o ${GOS}objloader.o ${GOS}ShadingHelper.o
# THE PLATFORM SUPPORTS UP TO GLES2 AND COMPUTE SHADERS COME WITH GLES3.1
# REMOVED
# ${O}${_E}CRT_shader.o
GL_STUFF_EFFECTS_OBJECTS=${GOE}PseudoContext.o ${GOE}ReelManager.o ${GOE}Scene.o ${GOE}Screen.o ${GOE}TexMerger.o
GL_STUFF_CURVES_OBJECTS=${GOC}Bezier.o ${GOC}Curve.o ${GOC}CurveIterator.o ${GOC}CurvesLoader.o ${GOC}Hermite.o ${GOC}NURBS.o
GL_STUFF_OBJECTS=${GL_STUFF_UTILS_OBJECTS} ${GL_STUFF_SCENE_OBJECTS} \
${GL_STUFF_EFFECTS_OBJECTS} ${GL_STUFF_CURVES_OBJECTS} \
${GL_STUFF_COMPATIBILITY_OBJECT}
FULL_BUILD_OBJECTS=${GL_STUFF_OBJECTS} ${OBJECTS}
LINKS=-lmyGLUT -lGLESv2 -lEGL -lm -lstdc++ -lc
# same as the GL_STUFF MAKEFILE
CFLAGS=-ansi -Wpedantic -Winline -Werror -std=c++11
all :
make -C ${GL_STUFF_D}
make ${TARGET}
${TARGET} : ${OBJECTS}
${CPP_COMPILER} \
-o ${TARGET} \
-Wl,-unresolved-symbols=ignore-in-shared-libs \
${FULL_BUILD_OBJECTS} \
-L${GLUT_D} \
${L_SHLIBS} \
${LINKS}
# -I ./ è una porcata clamorosa
Main.o : Main.cpp ${GLUT_D}glut.h ./GL_STUFF/GLES_3_1_compatibility.h
${CPP_COMPILER} \
${I_GRAPHICS} \
${I_CGI_MATH} \
${I_MY_GLUT} \
-I ./ \
-c ${CFLAGS} Main.cpp \
${GLOBAL_COMPILE_CONF}
.PHONY: clean debug
clean:
make clean -C ${GL_STUFF_D}
-rm ${TARGET} ${OBJECTS} *~ core