feat: v2 Kotor-style tile kits and tile layout compile#210
Conversation
|
📦 This PR is large (>500 lines changed). |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ece15b8bd1
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| size_y=cell, | ||
| z=0.0, | ||
| ) | ||
| parts.append((b, wx, wy, z + tpl.offset.z)) |
There was a problem hiding this comment.
Apply template X/Y offset for generated floor walkmesh
When a floor template has no WOK, the fallback quad is translated with wx/wy only, while tpl.offset.x and tpl.offset.y are ignored. v2 kits explicitly support per-template offsets and this path is the one used for MDL-only templates, so compiled walkmesh can be visibly/collision-wise displaced from the tile geometry whenever offsets are non-zero.
Useful? React with 👍 / 👎.
| b = deepcopy(tpl.wok) | ||
| parts.append( | ||
| (b, wx + tpl.offset.x, wy + tpl.offset.y, z + tpl.offset.z), | ||
| ) |
There was a problem hiding this comment.
Apply template rotation when merging tile walkmeshes
The compiler loads TileTemplate.rotation but never applies it while building the merged BWM; this branch only deep-copies each template WOK and translates it. Any template authored with non-identity rotation will therefore generate a misoriented walkmesh (and the same issue exists for generated quads), causing navigation/door alignment mismatches against rendered tile orientation.
Useful? React with 👍 / 👎.
|
📦 This PR is large (>500 lines changed). |
8c078e2 to
c095935
Compare
|
📦 This PR is large (>500 lines changed). |
|
📦 This PR is large (>500 lines changed). |
…ool discovery in ci Co-authored-by: Boden <th3w1zard1@users.noreply.github.com>
8c078e2 to
783df4b
Compare
|
|
| except ImportError: | ||
| tomllib = None # type: ignore[assignment, misc] | ||
|
|
||
| LIBRARY_SOURCE_PATHS: list[str] = [ |
Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
…/OpenKotOR/PyKotor into cursor/indoor-builder-tilekit-v2
Co-authored-by: Boden <th3w1zard1@users.noreply.github.com>
|
|
| var floorTemplate = Kit.Manager.Get(floorData.kitID.Value).Floor(floorData.templateID.Value); | ||
| tile.Floor.SwitchTemplate(floorTemplate); | ||
|
|
||
| // TODO |
| // todo ienumerable extension | ||
| private List<(T Item1, T Item2)> GetCombinations<T>(IEnumerable<T> listA, IEnumerable<T> listB) | ||
| { | ||
| // TODO convert to list extensions method? |
| { | ||
| descriptors.AddRange(DescriptorsForModel(assets, @object.Template.Model, @object.LocalTransform)); | ||
| } | ||
| // TODO - clean this up somehow |
|
|
1 similar comment
|
|
…ndoor-builder-tilekit-v2 for Layout merge PR
|
|
…olset; use OpenKotOR HolocronToolset URL in .gitmodules
|
|
…submodule reference for KotOR.js
|
|
1 similar comment
|
|
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
@copilot resolve the merge conflicts in this pull request |
…olve conflicts) Co-authored-by: th3w1zard1 <2219836+th3w1zard1@users.noreply.github.com>
Merge conflicts resolved in commit
|
|
@copilot resolve the merge conflicts in this pull request |
…olve conflicts round 2) Co-authored-by: th3w1zard1 <2219836+th3w1zard1@users.noreply.github.com>
Merge conflicts resolved in commit
|
Description
Integrates v2 Kotor.NET-style tile kits (
kitserializer_v0_1), Area Designer JSON v0.1 persistence onIndoorMap, GL tile kit scene preview and cache invalidation, Holocron Toolset indoor builder / Module Designer layout workflows (including parity fixes for navigation, status callback, Blender room sync, and related UI), documentation and patch notes for the GL preview workflow, unit tests for tilekit v2 and GL helpers, and CI adjustments (e.g. Defender for DevOps / Bandit path handling).Type of Change
Package(s) Affected
Tools/Changes Made
area_designer_v01on indoor maps; JSON helpers for format 0.1 load/save.Testing
Test Results
Checklist
Related Issues
Fixes #
Closes #
Related to #
Screenshots (if applicable)
N/A (tooling and pipeline changes; optional screenshots of Holocron GL preview / Module Designer Layout mode if helpful for reviewers).
Additional Notes
cursor/indoor-builder-tilekit-v2before marking ready for review.docs/patchesdescribe Holocron preview integration for reviewers.