Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Generate interface block using shaders/data.hHEADmaster | Tomasz Kramkowski | 2022-10-16 | 4 | -18/+19 |
| | |||||
* | Make deplinks phony | Tomasz Kramkowski | 2022-10-16 | 1 | -1/+1 |
| | |||||
* | remove unused glUniform3f and glUniform4f | Tomasz Kramkowski | 2022-10-16 | 1 | -2/+0 |
| | |||||
* | Makefile: add accidentally dropped lines | Tomasz Kramkowski | 2018-11-02 | 1 | -0/+3 |
| | |||||
* | Cleanup pass | Tomasz Kramkowski | 2018-10-27 | 13 | -43/+70 |
| | |||||
* | Use shaders/data.h to generate material code | Tomasz Kramkowski | 2018-10-22 | 5 | -18/+17 |
| | | | | | There is enough information to generate some of the material loading code from shaders/data.h. | ||||
* | main shader: Use an interface block for neatness | Tomasz Kramkowski | 2018-10-22 | 2 | -17/+21 |
| | |||||
* | Switch to shader version 1.5 to match OpenGL 3.2 requirement | Tomasz Kramkowski | 2018-10-22 | 1 | -1/+1 |
| | | | | | | | | | | OpenGL 3.3 was the first version of OpenGL where the shader program versioning scheme was made to follow the GL versioning scheme. Now that we have vulkan, it's mismatched again. That's all irrelevant, the correct version of GLSL for OpenGL 3.2 is not 3.3 or 3.2 but actually 1.5. | ||||
* | use shaders/data.h for the definition of vertices | Tomasz Kramkowski | 2018-10-22 | 6 | -12/+20 |
| | | | | | | | | | | | | | Now that shaders/data.h is in place, it can be taken to the next extreme. The information stored in shaders/data.h is plentiful enough that vertex attribute location information can be standardised, the definition of vertices can be specified in only one place and the bindings for vertex information can be generated. It's around this point in time that I wish there was a better pre-processor for all this. It might make things a lot cleaner. | ||||
* | Fix light position so it falls outside of the utah teapot | Tomasz Kramkowski | 2018-10-19 | 1 | -3/+3 |
| | |||||
* | Implement specular mapping | Tomasz Kramkowski | 2018-10-19 | 4 | -17/+33 |
| | |||||
* | Fix fragment shader lighting calculation | Tomasz Kramkowski | 2018-10-19 | 1 | -3/+3 |
| | |||||
* | Allow multiple shaders while reducing duplication | Tomasz Kramkowski | 2018-10-19 | 12 | -114/+159 |
| | | | | | | This change also stops using bie as eventually it will be replaced with a more sophisticated asset handling system which will also allow custom shaders. | ||||
* | README: Dependencies now list correct OpenGL version | Tomasz Kramkowski | 2018-07-16 | 1 | -1/+1 |
| | | | | 3.2 is now used instead of 3.3. | ||||
* | ieee754f: always return quiet NaN | okovko | 2018-07-15 | 1 | -2/+0 |
| | | | | [tk@the-tk.com: changed commit message] | ||||
* | README: Add contribution and mailing list information | Tomasz Kramkowski | 2018-07-15 | 1 | -0/+10 |
| | | | | faqe now has a development mailing list | ||||
* | Change OpenGL context version to 3.2 for better portability | Tomasz Kramkowski | 2018-07-15 | 1 | -1/+1 |
| | | | | Apparently some version OSX or something doesn't support 3.3. | ||||
* | dorp says this is no longer UB if float (*)[4] is cast to float * | Tomasz Kramkowski | 2018-05-15 | 1 | -3/+3 |
| | | | | The C standard is a strange beast. | ||||
* | Add README.md | Tomasz Kramkowski | 2018-05-04 | 1 | -0/+42 |
| | |||||
* | faqe.c: main now returns 0 to fix SDL_main on windows | Tomasz Kramkowski | 2018-05-04 | 1 | -0/+2 |
| | | | | | On windows SDL replaces main with SDL_main and uses a WinMain function. SDL_main is not main so it must return something. | ||||
* | Remove tex directory (accidentally left in) | Tomasz Kramkowski | 2018-05-04 | 1 | -5/+0 |
| | |||||
* | Cleanup and fix texture loading | Tomasz Kramkowski | 2018-05-04 | 1 | -6/+8 |
| | |||||
* | Remove texture fetching functionality from makefile | Tomasz Kramkowski | 2018-05-04 | 4 | -12/+1 |
| | |||||
* | Move assets to an assets subdirectory and simplify model loading | Tomasz Kramkowski | 2018-05-04 | 2 | -12/+18 |
| | |||||
* | Replace manual definitions of GL types and enums with GL/gl.h | Tomasz Kramkowski | 2018-05-04 | 2 | -79/+2 |
| | | | | | This is cumbersome and pointless. The goal is to write a simple loader not to rewrite the entire OpenGL header file. | ||||
* | fragment shader: implement blinn-phong | Tomasz Kramkowski | 2018-05-04 | 1 | -3/+3 |
| | |||||
* | Animate the light position around the cube | Tomasz Kramkowski | 2018-05-03 | 2 | -3/+9 |
| | |||||
* | Add a simple camera struct and camera controls | Tomasz Kramkowski | 2018-05-03 | 5 | -16/+125 |
| | |||||
* | Cleanup: License headers, spacing, naming | Tomasz Kramkowski | 2018-05-02 | 11 | -9/+45 |
| | | | | | | | Rename vnorm to fnorm (fragment normal). Change shader license headers to C++ style comments. Fix spacing for PI define in faqe.c. Add missing license headers. | ||||
* | .gitignore: Add .dir-locals.el | Tomasz Kramkowski | 2018-05-02 | 1 | -0/+1 |
| | |||||
* | Implement diffuse texture loading and basic material support | Tomasz Kramkowski | 2018-05-02 | 15 | -8/+184 |
| | |||||
* | fmd.c: Bump file magic number version | Tomasz Kramkowski | 2018-05-02 | 1 | -1/+1 |
| | |||||
* | fmd.c: Correct bugs in implementation | Tomasz Kramkowski | 2018-05-02 | 1 | -2/+4 |
| | | | | | Materials are now loaded correctly. Material indices should be loaded with 0xffffffff being -1. | ||||
* | Improve glprog_load to take sentinel terminated lists | Tomasz Kramkowski | 2018-05-02 | 3 | -10/+12 |
| | | | | | | Numerous times a new uniform has been added and the corresponding increment of the nunis parameter was forgotten causing confusion. This should not happen anymore. | ||||
* | Enable SRGB framebuffer and backface culling. | Tomasz Kramkowski | 2018-05-02 | 2 | -0/+4 |
| | |||||
* | shaders: fix initialisation of vec3 | Tomasz Kramkowski | 2018-04-30 | 2 | -3/+3 |
| | |||||
* | Implement basic fixed point light source and phong shading | Tomasz Kramkowski | 2018-04-30 | 2 | -5/+30 |
| | | | | | | This patch places a single point light source in the scene and implements view-space phong shading around it. This is in preparation for texture values being fed in from a set of textures. | ||||
* | Fix model matrix being transposed. | Tomasz Kramkowski | 2018-04-30 | 1 | -1/+1 |
| | |||||
* | Store camera position in a variable for now. | Tomasz Kramkowski | 2018-04-30 | 1 | -1/+2 |
| | |||||
* | Fix proj mat not being set requiring a resize before anything shows | Tomasz Kramkowski | 2018-04-30 | 1 | -0/+1 |
| | | | | | | The projection matrix uniform was being used before the shader program was being used. This caused nothing to get rendered until a window resize. | ||||
* | gl.h: Clean up enumeration constants for error returns. | Tomasz Kramkowski | 2018-04-27 | 1 | -7/+7 |
| | |||||
* | Implement basic model loading of FMD format. | Tomasz Kramkowski | 2018-04-27 | 15 | -49/+404 |
| | | | | | | | | | | | | The FMD (Faqe Model Data) format is a format designed for faqe. It stores vertex, element and material information and mesh information. This patch provides the basic implementation and use of this format. This patch also implements perspective projection, depth testing and view and model matrices. An example fmd file is provided. | ||||
* | glfunc.h: remove superfluous semicolons | Tomasz Kramkowski | 2018-04-26 | 1 | -3/+3 |
| | |||||
* | Fixup license headers | Tomasz Kramkowski | 2018-04-22 | 5 | -4/+16 |
| | |||||
* | Move linmath.h out of the project and into its own fork. | Tomasz Kramkowski | 2018-04-20 | 3 | -594/+4 |
| | |||||
* | Replace GLFW3 with SDL2 | Tomasz Kramkowski | 2018-04-20 | 2 | -30/+52 |
| | | | | Replace all of GLFW3 with SDL2 for future benefits. | ||||
* | Rename project gltest -> faqe | Tomasz Kramkowski | 2018-03-30 | 3 | -6/+6 |
| | | | | | | The project has been renamed to faqe. The logic for this name: quake -> fake quake -> faqe | ||||
* | Simplify gl loading by removing m4 and merging gldefs.h | Tomasz Kramkowski | 2018-03-30 | 9 | -165/+76 |
| | | | | | | | | | | | m4 has been removed, loadgl.c.in is now gl.c, gldefs.h and loadgl.h.in have now been merged into gl.h. loadgl.m4 has been transformed into glfunc.h which is being used in the way of a bie index file to generate information at 3 places. lgl_load is now gl_load and doesn't return anything, the jongjmp.h method of error handling was pre-emptive and for now this much simpler system will suffice. This means that lgl_strerror is no longer neede. | ||||
* | Remote texture assets can now be included in the project. | Tomasz Kramkowski | 2018-03-28 | 5 | -1/+17 |
| | |||||
* | Move assets*.o from Makefile to assets.mk | Tomasz Kramkowski | 2018-03-28 | 2 | -5/+7 |
| |