-
Notifications
You must be signed in to change notification settings - Fork 439
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mesh Data rework #371
Mesh Data rework #371
Commits on Mar 10, 2020
-
MeshTools: clean up and clarify removeDuplicates().
I spent a week (!) thinking the extra remapping array is not necessary. Actually, it is (though with a non-shitty hashmap the allocation could be done for both) -- this was an university assignment almost a decade ago and it wouldn't pass if it would be wasting time. But the english of past me was horrible. Yes.
Configuration menu - View commit details
-
Copy full SHA for 274759c - Browse repository at this point
Copy the full SHA 274759cView commit details -
Configuration menu - View commit details
-
Copy full SHA for ea7259b - Browse repository at this point
Copy the full SHA ea7259bView commit details
Commits on Mar 11, 2020
-
Primitives: use a more efficient duplicate removal approach in Icosph…
…ere. It's still extremely bad, but at least something.
Configuration menu - View commit details
-
Copy full SHA for 1c74a87 - Browse repository at this point
Copy the full SHA 1c74a87View commit details -
MeshTools: subdivideInPlace() accepts strided indices of any type.
Also vastly improved tests and docs.
Configuration menu - View commit details
-
Copy full SHA for a1924f5 - Browse repository at this point
Copy the full SHA a1924f5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 677b24a - Browse repository at this point
Copy the full SHA 677b24aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 847e3c8 - Browse repository at this point
Copy the full SHA 847e3c8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2f15f95 - Browse repository at this point
Copy the full SHA 2f15f95View commit details -
MeshTools: explicit generateSmoothNormals() overloads for each index …
…type. The templated version had the unfortunate "feature" of not being able to figure out the type when an array view or a C array got passed to it. That led to worse-than-ideal UX and even though it's now a bit more verbose on the implementation side, it's the preferred solution.
Configuration menu - View commit details
-
Copy full SHA for 29f0fdb - Browse repository at this point
Copy the full SHA 29f0fdbView commit details -
MeshTools: added a duplicateInto() variant taking a 2D strided array …
…view. This also allowed me to move all the complexity and assertions into a cpp file, no longer polluting the header.
Configuration menu - View commit details
-
Copy full SHA for 735c59e - Browse repository at this point
Copy the full SHA 735c59eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 24d01e2 - Browse repository at this point
Copy the full SHA 24d01e2View commit details -
MeshTools: this test didn't test the NaNs at all.
I wonder what was I doing back then.
Configuration menu - View commit details
-
Copy full SHA for db502c1 - Browse repository at this point
Copy the full SHA db502c1View commit details -
MeshTools: simplify test code a bit.
We have new less shitty APIs, so use them!
Configuration menu - View commit details
-
Copy full SHA for 1684cca - Browse repository at this point
Copy the full SHA 1684ccaView commit details -
Configuration menu - View commit details
-
Copy full SHA for aeedf12 - Browse repository at this point
Copy the full SHA aeedf12View commit details -
Configuration menu - View commit details
-
Copy full SHA for 78a2943 - Browse repository at this point
Copy the full SHA 78a2943View commit details -
MeshTools: added a STL-less subdivide().
The subdivideInPlace() alone wasn't convenient enough.
Configuration menu - View commit details
-
Copy full SHA for 77d7931 - Browse repository at this point
Copy the full SHA 77d7931View commit details -
MeshTools: deSTLify flipNormals(), flipFaceWinding() and tipsify().
And rename them to *InPlace(), since that's what they do. The original STL variants are now deprecated wrappers over the new names. Not adapting the test yet in order to test everything is alright.
Configuration menu - View commit details
-
Copy full SHA for b589f15 - Browse repository at this point
Copy the full SHA b589f15View commit details -
Configuration menu - View commit details
-
Copy full SHA for 75eefdb - Browse repository at this point
Copy the full SHA 75eefdbView commit details -
MeshTools: deSTLify compressIndices().
There's a lot to change with the current version -- the bloaty tuple, the useless min/max, and compressing all the way down to 8 bits is not desirable anymore either. The new function allows to specify a minimal type to compress to and works also on 8- and 16-byte types, which makes it possible to also inflate a smaller type into a larger one. The old function is now deprecated.
Configuration menu - View commit details
-
Copy full SHA for 937689e - Browse repository at this point
Copy the full SHA 937689eView commit details -
MeshTools: added a type-erased compressIndices().
Useful when consuming the indices straight from MeshData.
Configuration menu - View commit details
-
Copy full SHA for 1974da2 - Browse repository at this point
Copy the full SHA 1974da2View commit details -
Configuration menu - View commit details
-
Copy full SHA for bae5eec - Browse repository at this point
Copy the full SHA bae5eecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 87c2bc7 - Browse repository at this point
Copy the full SHA 87c2bc7View commit details -
Reserve zero MeshPrimitive and MeshIndexType for invalid values.
Better for checking accidents, as picking a wrong primitive / index type can lead to *serious* rendering issues. Similarly to a change done to (Compressed)PixelFormat in 2019.10.
Configuration menu - View commit details
-
Copy full SHA for 7fd92c1 - Browse repository at this point
Copy the full SHA 7fd92c1View commit details -
This deliberately doesn't follow the PixelFormat enum naming, as RGBA components make no sense for most vertex data. Checking Metal and WebGPU, they seem to have arrived at a similar conclusion, only VkFormat is an outlier.
Configuration menu - View commit details
-
Copy full SHA for 520c22f - Browse repository at this point
Copy the full SHA 520c22fView commit details -
Make MeshPrimitive and MeshIndexType enums only 8bit.
Otherwise they take up too much space.
Configuration menu - View commit details
-
Copy full SHA for d46061b - Browse repository at this point
Copy the full SHA d46061bView commit details -
Trade: a reworked MeshData class.
With API analogous to the (relatively) new AnimationData -- with one buffer containing all index data and one buffer containing all vertex data, both meant to be uploaded as-is to the GPU. This will eventually replace MeshData2D and MeshData3D, backwards compatibility and wiring up to other APIs will be done in follow-up commits.
Configuration menu - View commit details
-
Copy full SHA for ecbe571 - Browse repository at this point
Copy the full SHA ecbe571View commit details -
Trade: implement Importer interfaces for the new MeshData.
Deprecating of the old ones comes later.
Configuration menu - View commit details
-
Copy full SHA for fb1fdf6 - Browse repository at this point
Copy the full SHA fb1fdf6View commit details -
Trade: new enum for describing data ownership.
Will be used for MeshData that don't own the memory.
Configuration menu - View commit details
-
Copy full SHA for fcd38ca - Browse repository at this point
Copy the full SHA fcd38caView commit details -
Trade: implement mutable data access in MeshData.
Turns out the design wasn't so simple after all. AnimationData and ImageData classes will follow with similar changes.
Configuration menu - View commit details
-
Copy full SHA for 8ea86b0 - Browse repository at this point
Copy the full SHA 8ea86b0View commit details -
Trade: return TrackView with const types from AnimationData.
Follows the change done in 954798a.
Configuration menu - View commit details
-
Copy full SHA for a3ab27f - Browse repository at this point
Copy the full SHA a3ab27fView commit details -
Trade: mutable access in AnimationData.
Follows the change done in MeshData.
Configuration menu - View commit details
-
Copy full SHA for 0fd6219 - Browse repository at this point
Copy the full SHA 0fd6219View commit details -
Configuration menu - View commit details
-
Copy full SHA for b71e50b - Browse repository at this point
Copy the full SHA b71e50bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6ed0df2 - Browse repository at this point
Copy the full SHA 6ed0df2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4011e30 - Browse repository at this point
Copy the full SHA 4011e30View commit details -
Trade: allow AnimationTrackData be created from a typed track.
So users aren't force to specify everything on their own. It makes the test code a bit less painful. But just a bit.
Configuration menu - View commit details
-
Copy full SHA for dd5acdd - Browse repository at this point
Copy the full SHA dd5acddView commit details -
Trade: make it possible to construct AnimationData from track init list.
Easier to write. Need to take extra care with default deleters.
Configuration menu - View commit details
-
Copy full SHA for 6ddcc0b - Browse repository at this point
Copy the full SHA 6ddcc0bView commit details -
Trade: make MeshIndexData constexpr.
First step towards an ability to expose data compiled into an executable through MeshData without having to allocate anything.
Configuration menu - View commit details
-
Copy full SHA for 8cd7508 - Browse repository at this point
Copy the full SHA 8cd7508View commit details -
Trade: make MeshAttributeData constexpr.
This makes it possible to have fully allocation-less MeshData, with statically defined indices and attributes. Only the final MeshData construction needs to be done at runtime because Array is not constexpr, but that isn't anything heavy anyway.
Configuration menu - View commit details
-
Copy full SHA for c74b4c6 - Browse repository at this point
Copy the full SHA c74b4c6View commit details -
Trade: make AnimationTrackData constructors explicit.
There's a ton of parameters and it's just unreadable without.
Configuration menu - View commit details
-
Copy full SHA for 93e6dc2 - Browse repository at this point
Copy the full SHA 93e6dc2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 036fced - Browse repository at this point
Copy the full SHA 036fcedView commit details -
Trade: typeless access to MeshData attributes.
Similarly to ImageData::pixels() which return a strided array view of one dimension more.
Configuration menu - View commit details
-
Copy full SHA for e3ee1e5 - Browse repository at this point
Copy the full SHA e3ee1e5View commit details -
Trade: expose getters in MeshIndexData.
It made testing and everything harder than strictly necessary. OTOH still keeping MeshData as a friend and accessing members directly since those are heavily interconnected anyway.
Configuration menu - View commit details
-
Copy full SHA for aecec18 - Browse repository at this point
Copy the full SHA aecec18View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f35b06 - Browse repository at this point
Copy the full SHA 5f35b06View commit details -
Trade: make it possible to construct a "padding" MeshAttributeData.
Will be used in MeshTools algorithms. Also harden the MeshData constructor to reject such instances.
Configuration menu - View commit details
-
Copy full SHA for 4764979 - Browse repository at this point
Copy the full SHA 4764979View commit details -
Trade: direct access to MeshAttributeData array in MeshData.
Again useful for MeshTools algos.
Configuration menu - View commit details
-
Copy full SHA for d054226 - Browse repository at this point
Copy the full SHA d054226View commit details -
Trade: typeless access to MeshData indices.
Like with attributes, it returns a 2D strided view with the second dimension having the same size as the index type.
Configuration menu - View commit details
-
Copy full SHA for 506740f - Browse repository at this point
Copy the full SHA 506740fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 87d16bc - Browse repository at this point
Copy the full SHA 87d16bcView commit details -
Trade: relax index/attribute/vertex count restrictions in MeshData.
Allow to make: - an indexed mesh with zero indices - a mesh with non-zero attribute count but zero vertices - a mesh with non-zero vertex count but zero attributes All of these are valid use cases as explained in the tests, and will also make the release*() behavior defined better.
Configuration menu - View commit details
-
Copy full SHA for 270e93e - Browse repository at this point
Copy the full SHA 270e93eView commit details -
Trade: make MeshData::release*() less brutal, add releaseAttributeDat…
…a(). It only resets count of released thing to zero, not going all nuclear. Otherwise it wouldn't be possible to release attribute data and then vertex data as releasing one would wipe the other.
Configuration menu - View commit details
-
Copy full SHA for a3c5c00 - Browse repository at this point
Copy the full SHA a3c5c00View commit details -
Trade: added MeshData::attributeId().
Useful for quick localization of named attribs when dealing with attributeData() (for example in MeshTools).
Configuration menu - View commit details
-
Copy full SHA for b016258 - Browse repository at this point
Copy the full SHA b016258View commit details -
Configuration menu - View commit details
-
Copy full SHA for ccd3d24 - Browse repository at this point
Copy the full SHA ccd3d24View commit details -
MeshTools: implement isInterleaved() for Trade::MeshData.
Will be used to distinguish if the data need to be repacked or not in various tools.
Configuration menu - View commit details
-
Copy full SHA for 3784dea - Browse repository at this point
Copy the full SHA 3784deaView commit details -
MeshTools: implement interleavedLayout().
This was originally meant to be an interleave() that operates on MeshData, but later I realized I need the same logic in duplicate(), so turned it into a private function. Now I am pretty sure I'll be using this function in *many* importer plugins :D
Configuration menu - View commit details
-
Copy full SHA for 1e85279 - Browse repository at this point
Copy the full SHA 1e85279View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c2fb3f - Browse repository at this point
Copy the full SHA 6c2fb3fView commit details -
Configuration menu - View commit details
-
Copy full SHA for e8692af - Browse repository at this point
Copy the full SHA e8692afView commit details -
MeshTools: implement compile() taking a MeshData.
Also add new variants that allow for external buffers.
Configuration menu - View commit details
-
Copy full SHA for 16c3480 - Browse repository at this point
Copy the full SHA 16c3480View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5481581 - Browse repository at this point
Copy the full SHA 5481581View commit details -
Trade: deprecate AbstractImporter interfaces for MeshDataXD.
For backwards compatibility these will delegate to the new MeshData interfaces for 3D (and nothing for 2D, because so far there were no 2D scene importers).
Configuration menu - View commit details
-
Copy full SHA for 0f4a5ad - Browse repository at this point
Copy the full SHA 0f4a5adView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0067909 - Browse repository at this point
Copy the full SHA 0067909View commit details -
Primitives: port away from MeshDataXD.
The internals don't use any std::vector anymore, only the icosphere needs an std::unordered_map to do duplicate removal. Additionally, the most simple primitives are now simply views on constant data, being completely zero-allocation. On a Mac this resulted in the dylib going down from 1.5 MB to 418 kB in Debug, and from 129 kB to 90 kB in Release. Quite nice. The tests are not ported away from MeshDataXD yet as I want to ensure the behavior is *exactly* as before.
Configuration menu - View commit details
-
Copy full SHA for c8de337 - Browse repository at this point
Copy the full SHA c8de337View commit details -
Primitives: port tests and related tools away from MeshDataXD.
Improving the tests a bit for trivial primitives to ensure the attribute layouts are correct, not just counts.
Configuration menu - View commit details
-
Copy full SHA for a68946d - Browse repository at this point
Copy the full SHA a68946dView commit details -
Configuration menu - View commit details
-
Copy full SHA for fa3c949 - Browse repository at this point
Copy the full SHA fa3c949View commit details -
Configuration menu - View commit details
-
Copy full SHA for 89d6d6d - Browse repository at this point
Copy the full SHA 89d6d6dView commit details -
Configuration menu - View commit details
-
Copy full SHA for c07af03 - Browse repository at this point
Copy the full SHA c07af03View commit details -
Configuration menu - View commit details
-
Copy full SHA for 35659a6 - Browse repository at this point
Copy the full SHA 35659a6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 53ef991 - Browse repository at this point
Copy the full SHA 53ef991View commit details -
Configuration menu - View commit details
-
Copy full SHA for 274fdc3 - Browse repository at this point
Copy the full SHA 274fdc3View commit details -
Add packed, half and double types to VertexFormat.
Intentionally not enabling / documenting the double types for use with positions / normals / ... yet. Might come later (or never).
Configuration menu - View commit details
-
Copy full SHA for 84ee4f3 - Browse repository at this point
Copy the full SHA 84ee4f3View commit details -
Trade: support packed attributes in MeshData.
This was a LONG unexpected detour... I mean, I expected it, but not so soon.
Configuration menu - View commit details
-
Copy full SHA for ed88b35 - Browse repository at this point
Copy the full SHA ed88b35View commit details -
Configuration menu - View commit details
-
Copy full SHA for 13c071a - Browse repository at this point
Copy the full SHA 13c071aView commit details -
Configuration menu - View commit details
-
Copy full SHA for ee06eb2 - Browse repository at this point
Copy the full SHA ee06eb2View commit details -
Configuration menu - View commit details
-
Copy full SHA for b203924 - Browse repository at this point
Copy the full SHA b203924View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0657d60 - Browse repository at this point
Copy the full SHA 0657d60View commit details -
Configuration menu - View commit details
-
Copy full SHA for a02e946 - Browse repository at this point
Copy the full SHA a02e946View commit details -
Trade: pack MeshAttributeData internals better.
Before it was a 32-byte structure with 3 bytes free (or a 20-byte structure with 3 bytes free), now it's a 24-byte structure with 5 bytes free. Exploiting the fact that strides can't be too high for a GPU anyway (so 2 bytes is enough instead of 8), and vertex count is capped to 32bit by MeshData anyway (so no need for 8 also), saving 10 bytes on a 64-bit build.
Configuration menu - View commit details
-
Copy full SHA for 5e81d10 - Browse repository at this point
Copy the full SHA 5e81d10View commit details -
Trade: support offset-only MeshAttributeData.
Originally this was done in order to make handling of deserialized data much simpler (as for those attributes also need to only contain an offset into some unknown data array), but seems this could be very useful elsewhere as well -- for example when the layout is known beforehand but the actual data not yet -- such as in the Line and Gradient primitives (going to switch them to this in the next commit). What still unfortunately has to be known in advance is the actual vertex count (as supplying it directly to MeshData would mean adding 6 new constructor overloads, and there's enough of those already). Might revisit later.
Configuration menu - View commit details
-
Copy full SHA for 47695f0 - Browse repository at this point
Copy the full SHA 47695f0View commit details -
Primitives: use offset-only attribs for Line and Gradient.
One less allocation for each.
Configuration menu - View commit details
-
Copy full SHA for eb98f13 - Browse repository at this point
Copy the full SHA eb98f13View commit details -
Enable embedding implementation-specific values in VertexFormat.
Similarly to PixelFormat. Will be useful for Vulkan, unfortunately not so much for GL because there the format is specified by three orthogonal values and it's a terrible mess.
Configuration menu - View commit details
-
Copy full SHA for 31d3cdc - Browse repository at this point
Copy the full SHA 31d3cdcView commit details -
Provide reliable mapping of VertexFormat to GL and Vulkan.
GL was missing a check whether given format is available on a target (for example double types are not on ES), and for Vulkan we need something similar to pixel format mapping as well.
Configuration menu - View commit details
-
Copy full SHA for 7d44bcc - Browse repository at this point
Copy the full SHA 7d44bccView commit details -
Configuration menu - View commit details
-
Copy full SHA for a29e9dc - Browse repository at this point
Copy the full SHA a29e9dcView commit details -
Configuration menu - View commit details
-
Copy full SHA for a3bb6ba - Browse repository at this point
Copy the full SHA a3bb6baView commit details -
Configuration menu - View commit details
-
Copy full SHA for f46b522 - Browse repository at this point
Copy the full SHA f46b522View commit details -
Trade: support array attributes in MeshData.
The last major bit needed for meshlet support.
Configuration menu - View commit details
-
Copy full SHA for c0e3a84 - Browse repository at this point
Copy the full SHA c0e3a84View commit details -
Enlarge MeshPrimitive to four bytes, allow wrapping impl-specific val…
…ues. And also handle them specially in GL::meshPrimitive() and Vk::vkPrimitiveTopology().
Configuration menu - View commit details
-
Copy full SHA for c963450 - Browse repository at this point
Copy the full SHA c963450View commit details -
Add MeshPrimitive::Instances, Faces and Edges.
To support meshes that are not so GPU-friendly. And also meshlets at a later point.
Configuration menu - View commit details
-
Copy full SHA for d096aa6 - Browse repository at this point
Copy the full SHA d096aa6View commit details -
Trade: support mesh level import in AbstractImporter.
Similar to image mip level import, but this is largely left to be importer-specific. For example PLY defines per-face data and sometimes one might want to import them as-is, without them being turned into a per-vertex property.
Configuration menu - View commit details
-
Copy full SHA for 9425c23 - Browse repository at this point
Copy the full SHA 9425c23View commit details -
MeshTools: added removeDuplicatesInPlaceInto().
I need to put the resulting index array into a pre-existing allocation.
Configuration menu - View commit details
-
Copy full SHA for 8f5639e - Browse repository at this point
Copy the full SHA 8f5639eView commit details -
ObjImporter: port away from MeshDataXD.
Not the tests yet -- those will get done in the next round.
Configuration menu - View commit details
-
Copy full SHA for 4269c13 - Browse repository at this point
Copy the full SHA 4269c13View commit details -
Configuration menu - View commit details
-
Copy full SHA for f782caa - Browse repository at this point
Copy the full SHA f782caaView commit details -
Configuration menu - View commit details
-
Copy full SHA for ab86b4c - Browse repository at this point
Copy the full SHA ab86b4cView commit details -
MeshTools: implemented combineIndexedAttributes().
Replaces the STL-heavy combineIndexedArrays(), but in a less extremely horrendous way.
Configuration menu - View commit details
-
Copy full SHA for ec739c1 - Browse repository at this point
Copy the full SHA ec739c1View commit details -
MeshTools: deprecate remaining STL-ridden APIs.
The combineIndexArrays() and combineIndexedArrays() API is replaced with a more generic combineIndexedAttributes(), and thanks to that we also don't need STL-based duplicate() and removeDuplicates().
Configuration menu - View commit details
-
Copy full SHA for ec02341 - Browse repository at this point
Copy the full SHA ec02341View commit details -
MeshTools: added removeDuplicates() / removeDuplicatesInto().
Those work without modifying the input data. The *Indexed and fuzzy variants are missing as I don't need those right now, but might get added later.
Configuration menu - View commit details
-
Copy full SHA for 8a6ccea - Browse repository at this point
Copy the full SHA 8a6cceaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0c76896 - Browse repository at this point
Copy the full SHA 0c76896View commit details -
Configuration menu - View commit details
-
Copy full SHA for 12044b8 - Browse repository at this point
Copy the full SHA 12044b8View commit details -
Configuration menu - View commit details
-
Copy full SHA for e30d9de - Browse repository at this point
Copy the full SHA e30d9deView commit details -
Configuration menu - View commit details
-
Copy full SHA for 96368b9 - Browse repository at this point
Copy the full SHA 96368b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5a276fe - Browse repository at this point
Copy the full SHA 5a276feView commit details -
Trade: add getters for offset and stride in MeshAttributeData.
Less code and complexity than first creating a StridedArrayView in data() and then extracting offset/stride from there.
Configuration menu - View commit details
-
Copy full SHA for 8c4a2b1 - Browse repository at this point
Copy the full SHA 8c4a2b1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7a9c630 - Browse repository at this point
Copy the full SHA 7a9c630View commit details -
Trade: allow specifying explicit vertex count on MeshData construction.
Until now, except for an attribute-less index-less mesh, the vertex count was only implicitly taken from passed attributes, but it was severely limiting: - There was no way to set vertex count for an attribute-less indexed mesh, which didn't make sense - All code that made non-owning MeshData instances referencing another MeshData had to explicitly handle the attribute-less corner case to avoid vertex count getting lost - Offset-only attributes couldn't be used to specify static layout of meshes with dynamic vertex count, causing unnecessary extra allocations especially in the Primitives library.
Configuration menu - View commit details
-
Copy full SHA for 27f6cc3 - Browse repository at this point
Copy the full SHA 27f6cc3View commit details -
Primitives: use compile-time attribute definitions where possible.
Now possible in all cases, except for grid, where the combination count is too large to be practical, even more so with the introduction of tangents in the future.
Configuration menu - View commit details
-
Copy full SHA for 06b8275 - Browse repository at this point
Copy the full SHA 06b8275View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9a6ef0a - Browse repository at this point
Copy the full SHA 9a6ef0aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7857388 - Browse repository at this point
Copy the full SHA 7857388View commit details -
Configuration menu - View commit details
-
Copy full SHA for 393ba7a - Browse repository at this point
Copy the full SHA 393ba7aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 715f611 - Browse repository at this point
Copy the full SHA 715f611View commit details -
Configuration menu - View commit details
-
Copy full SHA for a4bf0e6 - Browse repository at this point
Copy the full SHA a4bf0e6View commit details -
CMake: MeshTools now depends on Trade unconditionally.
Isn't it great when I discover this five minutes before merging to master?
Configuration menu - View commit details
-
Copy full SHA for 236954a - Browse repository at this point
Copy the full SHA 236954aView commit details