summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* adapt to the new texture interface and fix the identvshader.rodri2024-07-052-16/+20
| | | | | | | | the identvshader was used for the toon shader as well, and that forced it to do a light computation when its fragment shader won't ever use it. split it in two vshaders, each for their own purpose, so we don't get slow identity rendering.
* med,vis: fix normal map sampling.rodri2024-07-042-4/+6
| | | | | | recent changes in libgraphics assume every texture resides in an sRGB color space, which is not the case for material resources like normals.
* vis,med: make qball rotations position-independent.rodri2024-06-162-9/+44
| | | | | the camera no longer needs to be on the first quadrant for the qball to work.
* vis: add some instrumentation to debug the framebuffers.rodri2024-06-142-1/+39
|
* use the new modulapt3 functions. don't clamp in the shaders.rodri2024-06-133-114/+80
|
* add more info to the readme.rodri2024-06-071-0/+11
|
* update the readme with a list of tools and their usage.rodri2024-06-071-3/+74
|
* add skyboxes based on cubemaps.rodri2024-06-0617-23/+51
|
* vis: same as previous commit, and add normal mapping to the phong shader.rodri2024-06-041-29/+53
| | | | | implemented tangent space normal mapping and now diablo3 looks sick!
* med: the qball now changes the model's rframe orientation.rodri2024-06-041-24/+25
|
* add a material file for the diablo3 model.rodri2024-06-042-0/+10
|
* get rid of rendering latency by decoupling it from i/o.rodri2024-05-233-41/+105
| | | | | | | | | | | i was using a single alternator to mux both i/o and drawing in a single proc, and avoid locking. the problem is that it causes a fight to break up every time there's any input (steady 100Hz) or a lot of drawing requests from the renderer (up to 60Hz.) i added a drawproc to handle exclusively drawing requests, and a drawing lock for UI widgets that kidnap the display.
* fix the gouraud shader. improve the cube generator in med.rodri2024-05-233-62/+97
| | | | | | | | gouraud wasn't being applied when the vertex had no material, now it just takes the defaults. also added a new primtest.obj to visualize all the primitives in a single model.
* began work on a model editor. add two more models.rodri2024-05-225-0/+1034
|
* solar: add planet selection.rodri2024-05-201-12/+88
|
* add the diablo3 model.rodri2024-05-188-0/+13340
|
* add a triangular basis and clamp the fov to [1,180]°.rodri2024-05-162-2/+13
|
* fix the qball.rodri2024-05-155-30/+24
|
* use real lengths in solar. bring a qball for vis.rodri2024-05-147-57/+183
|
* solar: add a button to select the ephemeris date.rodri2024-05-131-25/+64
|
* began work on a solar system planetarium.rodri2024-05-1215-0/+2392
|
* debug/plmon: close the Biobuf after loading the file.rodri2024-05-111-0/+1
|
* debug/plmon: paint selected timeslots differently and add an MMB quit option.rodri2024-05-101-2/+27
|
* vis: print pipeline timings to stderr when profiling.rodri2024-05-071-0/+6
|
* debug: add a pipeline monitor.rodri2024-05-072-0/+378
|
* mkfile: clean all the targets.rodri2024-05-031-1/+1
|
* adapt to the recent changes in libgraphics. add new test files.rodri2024-05-035-27/+53
|
* mkone → mkmanyrodri2024-04-242-4/+5
| | | | | crucial step to begin exploration of different 3d environments and their tools.
* fix alpha channel value in the fragment shaders.rodri2024-04-181-3/+3
|
* add a way to control zoom with the keyboard.rodri2024-04-112-8/+26
|
* use the new renderer interface.rodri2024-03-251-5/+9
|
* add a fake Keyboardctl filled by kbdproc. reset camera stats when switching ↵rodri2024-03-212-5/+23
| | | | shaders.
* fix the empty dir issue for good.rodri2024-03-171-3/+2
|
* implement actual gouraud (phong on the vertex shader).rodri2024-03-161-38/+103
|
* add models, textures and other assets.rodri2024-03-0620-0/+13798
|
* use the diffuse color map texture from the OBJMaterial for shading.rodri2024-03-061-7/+22
|
* change the fshaders to return a Color. no more cbuf+memfillcolor bullshit.rodri2024-03-061-69/+25
|
* use the new texture sampler and vertex material definitions.rodri2024-03-061-10/+96
| | | | | add an mmb menu for texture sampling selection and point light position randomization.
* make use of the new user-defined vertex attributes (varyings).rodri2024-03-031-12/+26
|
* replace the Memimage-based screenfb with an Image and fix flickering hud.rodri2024-02-271-13/+18
|
* implement a phong shader. add a shader selection menu. update the light source.rodri2024-02-251-13/+87
|
* model2world is now provided by libgraphics.rodri2024-02-211-6/+1
|
* add the ability to load multiple models at once.rodri2024-02-151-20/+22
| | | | | at the moment only one texture can be loaded and it is applied to the first model.
* set up a scene to hold the world and its entities.rodri2024-02-131-10/+24
|
* add a knob to toggle the hud stats.rodri2024-02-122-3/+14
|
* reuse the modeltex for inception mode.rodri2024-02-101-6/+5
|
* nuke empty dirs before pulldeps.rodri2024-02-081-1/+6
|
* add inception mode. improve the navigation. also don't rotate by default.rodri2024-02-081-21/+42
|
* pull libgraphics deps during pulldeps, not when building.rodri2024-02-031-1/+1
|
* fix the BIN path and install procedure.rodri2024-02-031-1/+5
|