Commit Graph

407 Commits

Author SHA1 Message Date
JosiahWI 246ee9c3ca Register Catch2 tests with CTest 2024-04-18 07:22:24 -05:00
jordan4ibanez 030abc7b04 spaces->tabs 2024-04-18 07:21:59 -05:00
jordan4ibanez 971a9e214e Update code with requested changes
Fix mistake on github

Comply with changes 1

Comply with requested changes 2

Comply with requested changed 3

Comply with requested changed 4

Requested changed 5

Requested changed 6

Requested changed 7

Requested changed 8

Requested changed 9

Requested changed 10

Requested changes 11

Requested changes 12

This one wasn't even requested

I just turned on my vertical ruler and I'm going to go nuts

Line 81 doesn't exist anymore

Requested changes 13

Requested changes 14

Begin snow man test

Write a lot of tests for snow man

Add to git ignore

Now unignore it

Alphabetical order

Pass by reference

Pass by reference

vertexBuffer is now handled on stack

Preallocate indicesBuffer then reverse it when complete

Undo vertexBuffer stack change causing mac builds to fail

Use direct initialization on the vertexBuffer
2024-04-18 07:21:59 -05:00
jordan4ibanez 4a8602ed0f Fix embedded textures causing a model not to load 2024-04-18 07:21:59 -05:00
jordan4ibanez 08d226cdb5 Fix indices, inverted models, & multiple models failing to load
Fix embedded textures causing a model not to load

Add todo

Add another todo

Push current (broken) prototyping

Fix missing bracket

Make a single array object work

Convert hard array into dynamic vector

Simplify semantics

Remove "new"

Add blocker for vscode environment changes

Disable non-dynamic prototyping

Add comment

Add more informative debug & disable it

Add additional items to gitignore

Add debug info for scalar value

Output even more debug info

Make textures render correctly

Insert the indices properly

Update .gitignore

Disable y flip

Make a reusable vertex buffer :)

Disallow embedded textures

More disable

Set up implementation for contiguous model

Add a note

More automation & framework

Final framework before stepping into function overhaul

Hold track of current_index

Integrate iterators

More integration

Rename, it's going to need 2 counters

Correctly offset the count to the right

Sync normals with positions

Time to use a tuple

Set up other counters

Do return value

Do input passing

Make (somewhat) working contiguous model

Add getter for translation data

Add debug info for future utilization

Update .gitignore

More debug

Update .gitignore

Update .gitignore

Remove all debug info & clean up

Delete this thing

Automate everything & put it into spec

Spaces into tabs

Remove array include as build test

Fix the gitignore
2024-04-18 07:21:59 -05:00
Josiah VanderZee 0216a02ed4 Fix segfault from reading bad number of indices 2024-04-18 07:21:59 -05:00
Josiah VanderZee a326f27f6a Fix coordinate system change
Old code was inverting the X axis, new code inverts the Z axis.
2024-04-18 07:21:59 -05:00
Josiah VanderZee 47a195b4de Fix aliasing violation when reading primitives 2024-04-18 07:21:59 -05:00
Josiah VanderZee 3dc24abdb3 Remove DESCRIPTION from tinygltf project 2024-04-18 07:21:58 -05:00
Josiah VanderZee 7220104c37 Test vertex normals on cube 2024-04-18 07:21:58 -05:00
Josiah VanderZee 72cb09a566 Test for texture coordinates on cube 2024-04-18 07:21:58 -05:00
Josiah VanderZee 742307f077 Scale cube vertices correctly 2024-04-18 07:21:58 -05:00
Josiah VanderZee 837b6be14e Add test for blender cube 2024-04-18 07:21:58 -05:00
Josiah VanderZee 82c547d50f Test for correct vertex indices 2024-04-18 07:21:56 -05:00
JosiahWI 3d2d3f8d5a Remove constexpr from readFloat 2024-04-18 07:20:25 -05:00
JosiahWI a20ac715ce Load vertex coordinates from glTF buffer 2024-04-18 07:20:22 -05:00
JosiahWI 21c3c16557 Test invalid JSON
Also converted all .cpp and .h line endings to CRLF in this commit.
2024-04-18 07:19:30 -05:00
JosiahWI 2ae436cb2c Update vertex test for coordinate system
This is also the first working version of the mesh. I successfully
loaded it in Minetest.
2024-04-18 07:18:30 -05:00
JosiahWI 30d5748e0c Test case when file is nullptr 2024-04-18 07:18:30 -05:00
JosiahWI 5e2d9d947e Test that minimal triangle has correct vertices 2024-04-18 07:18:30 -05:00
JosiahWI a9f56df279 Test that minimal triangle returns some mesh 2024-04-18 07:18:29 -05:00
JosiahWI 92862a3a2d Add test file for glTF mesh loading 2024-04-18 07:16:20 -05:00
JosiahWI a0b7a15693 Do CMake right 2024-04-18 07:10:56 -05:00
JosiahWI a3b2dbdebb Export tinygltf target 2024-04-18 07:10:04 -05:00
JosiahWI 36a90e9973 Add tinygltf library 2024-04-18 07:08:45 -05:00
Desour bcb952c3ca Move source/Irrlicht/ to src/ 2024-03-21 22:08:26 +01:00
Desour dd1043c4c0 Replace non-leading tabs with spaces, using:
find -type f |  # list all regular files
  grep -E '\.(h|cpp|mm)$' |  # filter for source files
  grep -v '/mt_' |  # filter out generated files
  grep -v '/vendor/' | # and vendored GL
  xargs -n 1 -P $(nproc) ./replace_non_leading_tabs.lua  # reformat everything
2024-03-21 22:08:26 +01:00
Desour adc96072cd Fix ugly formatted arrays
Found via: `rg --multiline "=\n\t*\{\n"`
2024-03-21 22:08:26 +01:00
numzero b01a3ea781 Fix ifs clang-format didn’t get 2024-03-21 22:08:26 +01:00
Desour f5c6d3e945 Reformat the code, using:
find -type f |  # list all regular files
  grep -E '\.(h|cpp|mm)$' |  # filter for source files
  grep -v '/mt_' |  # filter out generated files
  grep -v '/vendor/' | # and vendored GL
  grep -v '/test/image_loader_test.cpp' |  # and this file (has giant literals arrays)
  xargs -n 1 -P $(nproc) clang-format -i  # reformat everything

Co-authored-by: numzero <numzer0@yandex.ru>
2024-03-21 22:08:26 +01:00
sfan5 26c4f4e63d Ensure enough alignment for IImages 2024-03-10 13:58:24 +01:00
sfan5 9d07f906a7 Delete mesh writing support entirely
CB3DMeshWriter.cpp was not even being compiled
2024-03-10 10:11:27 +01:00
sfan5 d26c0aeaaf Remove more dead code 2024-03-09 23:00:33 +01:00
sfan5 70b0b46d50 Delete deprecated video driver methods 2024-03-09 23:00:33 +01:00
sfan5 1e89db1b80 Consistently include C headers by their C++ wrapper 2024-02-25 22:10:04 +01:00
ROllerozxa 2bbfa178ea
Don't link against SDL2main (#265) 2024-02-23 22:44:16 +01:00
sfan5 61682104df COpenGLCoreTexture: fix abort when format not supported 2024-02-23 21:31:33 +01:00
sfan5 46542793d6 OpenGL: Fix BGRA format mapping 2024-02-23 21:31:33 +01:00
sfan5 9f2d13a2b6 OpenGL: Print more debug info at init time 2024-02-23 21:31:33 +01:00
sfan5 54de743641 Workaround for too old GL header on older SDL versions
Problem: Since the removal of !_IRR_OPENGL_USE_EXTPOINTER_ we require some quite recent
symbols to compile the legacy GL driver. (*) Since the previous commit we prefer including
them via SDL but those are sometimes too old.

(*) This was in fact always a problem since USE_EXTPOINTER is the default.
    I guess people just had recent enough headers usually.
2024-02-23 21:31:33 +01:00
sfan5 3e8d8440e3 Vendor GL headers again
primary reason:
The unified GLES2 driver requires OpenGL headers (really), which Android does not provide.
2024-02-23 21:31:33 +01:00
sfan5 8189b2338a Remove now unused legacy OGLES2 driver 2024-02-23 21:31:33 +01:00
sfan5 0a77ef5dc2 Enable unified driver with all devices 2024-02-23 21:31:33 +01:00
sfan5 19f0f707a6 Use ContextManager to resolve symbols in GL driver 2024-02-23 21:31:33 +01:00
sfan5 83998f7471 Reduce OGLES extension array to ones actually used 2024-02-23 21:31:33 +01:00
sfan5 b7bb4b5958 Remove all !_IRR_OGLES1_USE_EXTPOINTER_ code 2024-02-23 21:31:33 +01:00
sfan5 f28e442bfa Drop all !_IRR_OGLES2_USE_EXTPOINTER_ code 2024-02-23 21:31:33 +01:00
sfan5 4cd5c3489e Drop all !_IRR_OPENGL_USE_EXTPOINTER_ code 2024-02-23 21:31:33 +01:00
sfan5 52e4d72ae2 Migrate OpenGL cache and texture handler to GL pointers
this makes the OpenGL 3 driver free of GL symbol references!
2024-02-23 21:31:33 +01:00
Muhammad Rifqi Priyo Susanto 2db8c8728e Missing value_or() when printing std::optional 2024-02-23 13:17:41 +01:00