Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bef71d391a | ||
|
|
b48b3a4f8f | ||
|
|
076f6cf97c |
@@ -1,5 +1,6 @@
|
|||||||
node_modules/
|
node_modules/
|
||||||
dist/
|
dist/
|
||||||
|
game_assets/
|
||||||
*.tsbuildinfo
|
*.tsbuildinfo
|
||||||
vite.config.js
|
vite.config.js
|
||||||
vite.config.d.ts
|
vite.config.d.ts
|
||||||
|
|||||||
@@ -6,6 +6,13 @@ These requirements apply to every screen, feature, game system, and code change
|
|||||||
|
|
||||||
AYN Thor Android app is the primary product. Browser build is a secondary access path for players without an AYN Thor. Do not weaken the Thor experience to simplify the browser version; provide an adaptive browser fallback instead.
|
AYN Thor Android app is the primary product. Browser build is a secondary access path for players without an AYN Thor. Do not weaken the Thor experience to simplify the browser version; provide an adaptive browser fallback instead.
|
||||||
|
|
||||||
|
## Game asset workflow
|
||||||
|
|
||||||
|
- `game_assets/` is an ignored local source library. Never load or import a runtime asset directly from it.
|
||||||
|
- When adopting a model, animation, texture, audio file, or other game asset from `game_assets/`, copy it into the tracked `src/assets/game/` runtime library first. Preserve its path relative to `game_assets/`.
|
||||||
|
- Use `pnpm assets:import <path-within-game_assets>` for the copy. Use `--replace` only to deliberately update an existing runtime copy. Copy required companion files and license/attribution notices with assets that are not self-contained.
|
||||||
|
- Reference only `src/assets/game/` copies from game code. Keep `game_assets/` as source material for future imports, conversions, and authoring work.
|
||||||
|
|
||||||
## AYN Thor display and layout targets
|
## AYN Thor display and layout targets
|
||||||
|
|
||||||
Design and test against both physical displays in landscape orientation. Physical panel resolution and Android CSS/layout viewport are different concepts; record and validate both.
|
Design and test against both physical displays in landscape orientation. Physical panel resolution and Android CSS/layout viewport are different concepts; record and validate both.
|
||||||
@@ -84,6 +91,14 @@ Stable locked 60 FPS is a release requirement, not a best-effort goal.
|
|||||||
- Favor algorithms and data layouts that reduce CPU and RAM together. Do not trade a large permanent memory increase for a tiny unmeasured CPU gain.
|
- Favor algorithms and data layouts that reduce CPU and RAM together. Do not trade a large permanent memory increase for a tiny unmeasured CPU gain.
|
||||||
- Performance fixes must preserve deterministic rules, input responsiveness, visual clarity, and controller accessibility.
|
- Performance fixes must preserve deterministic rules, input responsiveness, visual clarity, and controller accessibility.
|
||||||
|
|
||||||
|
## Verification scope
|
||||||
|
|
||||||
|
- Verify the changed code and its direct dependencies. Do not run tests, visual QA, or controller checks for unrelated screens or systems by default.
|
||||||
|
- For a screen change, check that screen's applicable display layouts, browser fallback, and controller path only.
|
||||||
|
- For a reusable mechanic or domain change, run its focused tests plus direct consumers affected by the change.
|
||||||
|
- Expand to broader regression or full-suite verification only for shared foundations, cross-cutting changes, risky refactors, release validation, or when explicitly requested.
|
||||||
|
- State what was verified and any deliberately unverified scope in the handoff.
|
||||||
|
|
||||||
## Definition of done
|
## Definition of done
|
||||||
|
|
||||||
A screen or mechanic is not complete until:
|
A screen or mechanic is not complete until:
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 113 KiB |
|
Before Width: | Height: | Size: 436 KiB |
|
Before Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 98 KiB |
|
Before Width: | Height: | Size: 422 KiB |
|
Before Width: | Height: | Size: 3.9 KiB |
@@ -1,35 +0,0 @@
|
|||||||
# Blender3D MTL File: Rathalos.blend
|
|
||||||
# Material Count: 3
|
|
||||||
newmtl Rathalos2_em002_BM_02.png
|
|
||||||
Ns 96.078431
|
|
||||||
Ka 0.000000 0.000000 0.000000
|
|
||||||
Kd 0.640000 0.640000 0.640000
|
|
||||||
Ks 0.500000 0.500000 0.500000
|
|
||||||
Ni 1.000000
|
|
||||||
d 1.000000
|
|
||||||
illum 0
|
|
||||||
map_Kd em002_BM_02.png
|
|
||||||
|
|
||||||
|
|
||||||
newmtl Rathalos1_em002_BM_01.png
|
|
||||||
Ns 96.078431
|
|
||||||
Ka 0.000000 0.000000 0.000000
|
|
||||||
Kd 0.640000 0.640000 0.640000
|
|
||||||
Ks 0.500000 0.500000 0.500000
|
|
||||||
Ni 1.000000
|
|
||||||
d 1.000000
|
|
||||||
illum 0
|
|
||||||
map_Kd em002_BM_01.png
|
|
||||||
|
|
||||||
|
|
||||||
newmtl Rathalos3_em002_BM_03.png
|
|
||||||
Ns 96.078431
|
|
||||||
Ka 0.000000 0.000000 0.000000
|
|
||||||
Kd 0.640000 0.640000 0.640000
|
|
||||||
Ks 0.500000 0.500000 0.500000
|
|
||||||
Ni 1.000000
|
|
||||||
d 0.000000
|
|
||||||
illum 0
|
|
||||||
map_Kd em002_BM_03.png
|
|
||||||
|
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 4.8 MiB |
|
Before Width: | Height: | Size: 769 KiB |
|
Before Width: | Height: | Size: 415 KiB |
@@ -1,64 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
KayKit : Character Animations (1.1)
|
|
||||||
|
|
||||||
Created/distributed by Kay Lousberg (www.kaylousberg.com)
|
|
||||||
Creation date: 10/12/2025 09:00
|
|
||||||
|
|
||||||
------------------------------
|
|
||||||
|
|
||||||
License: (Creative Commons Zero, CC0)
|
|
||||||
http://creativecommons.org/publicdomain/zero/1.0/
|
|
||||||
|
|
||||||
This content is free to use in personal, educational and commercial projects.
|
|
||||||
You can support me by purchasing an asset pack at the EXTRA or SOURCE tiers, leaving a donation/tip on itch.io, or joining my Patreon.
|
|
||||||
If you wish to credit me you can do so by crediting "Kay Lousberg, www.kaylousberg.com" (this is not mandatory)
|
|
||||||
|
|
||||||
------------------------------
|
|
||||||
|
|
||||||
This asset pack is here thanks to all the wonderful people who support KayKit on Patreon and those who buy EXTRA or SOURCE packs on itch.io.
|
|
||||||
|
|
||||||
And a big, special thank you to my Super Supporters on Patreon:
|
|
||||||
|
|
||||||
- Brian McBarron
|
|
||||||
- Silva
|
|
||||||
- Joseph Preston
|
|
||||||
- Leon Burkhardt
|
|
||||||
- NickyBHobbying
|
|
||||||
- Emilia
|
|
||||||
- Darren Laing
|
|
||||||
- Magic Pig Games
|
|
||||||
- Lennart Steinke
|
|
||||||
- OWSC
|
|
||||||
- tenthtonman
|
|
||||||
- Ducain23
|
|
||||||
- flo-bit
|
|
||||||
- Jezzy Sukaemi
|
|
||||||
- Martyn Rushton
|
|
||||||
- Joe
|
|
||||||
- estee
|
|
||||||
- Gustavo
|
|
||||||
- AngyZinn
|
|
||||||
- Alex Cea
|
|
||||||
- Matthew A
|
|
||||||
- Stephen Williams
|
|
||||||
- Wenpu Ng
|
|
||||||
- Kevin
|
|
||||||
- Legionof Light
|
|
||||||
- Dazusu
|
|
||||||
- Arnaud Schlupp
|
|
||||||
- JB
|
|
||||||
- Neil Castle
|
|
||||||
- Cedrico Serbruyns
|
|
||||||
- ovenaut
|
|
||||||
- Pawel Jarosz
|
|
||||||
|
|
||||||
------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
Patreon: http://patreon.com/kaylousberg
|
|
||||||
|
|
||||||
Follow here for updates:
|
|
||||||
http://twitter.com/KayLousberg
|
|
||||||
https://mastodon.gamedev.place/@Kay
|
|
||||||
http://twitter.com/KayLousberg
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
{
|
|
||||||
"asset" : {
|
|
||||||
"generator" : "Khronos glTF Blender I/O v3.4.50",
|
|
||||||
"version" : "2.0"
|
|
||||||
},
|
|
||||||
"scene" : 0,
|
|
||||||
"scenes" : [
|
|
||||||
{
|
|
||||||
"name" : "Scene",
|
|
||||||
"nodes" : [
|
|
||||||
0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"nodes" : [
|
|
||||||
{
|
|
||||||
"mesh" : 0,
|
|
||||||
"name" : "banner_blue"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"materials" : [
|
|
||||||
{
|
|
||||||
"name" : "texture",
|
|
||||||
"pbrMetallicRoughness" : {
|
|
||||||
"baseColorTexture" : {
|
|
||||||
"index" : 0
|
|
||||||
},
|
|
||||||
"metallicFactor" : 0,
|
|
||||||
"roughnessFactor" : 0.44999998807907104
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meshes" : [
|
|
||||||
{
|
|
||||||
"name" : "banner_blue",
|
|
||||||
"primitives" : [
|
|
||||||
{
|
|
||||||
"attributes" : {
|
|
||||||
"POSITION" : 0,
|
|
||||||
"TEXCOORD_0" : 1,
|
|
||||||
"NORMAL" : 2
|
|
||||||
},
|
|
||||||
"indices" : 3,
|
|
||||||
"material" : 0
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"textures" : [
|
|
||||||
{
|
|
||||||
"sampler" : 0,
|
|
||||||
"source" : 0
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"mimeType" : "image/png",
|
|
||||||
"name" : "dungeon_texture",
|
|
||||||
"uri" : "dungeon_texture.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"accessors" : [
|
|
||||||
{
|
|
||||||
"bufferView" : 0,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 187,
|
|
||||||
"max" : [
|
|
||||||
0.7500076293945312,
|
|
||||||
3.7274699211120605,
|
|
||||||
0.6895275712013245
|
|
||||||
],
|
|
||||||
"min" : [
|
|
||||||
-0.749992847442627,
|
|
||||||
0.5313930511474609,
|
|
||||||
0.3776381015777588
|
|
||||||
],
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 1,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 187,
|
|
||||||
"type" : "VEC2"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 2,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 187,
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 3,
|
|
||||||
"componentType" : 5123,
|
|
||||||
"count" : 291,
|
|
||||||
"type" : "SCALAR"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"bufferViews" : [
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2244,
|
|
||||||
"byteOffset" : 0,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 1496,
|
|
||||||
"byteOffset" : 2244,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2244,
|
|
||||||
"byteOffset" : 3740,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 582,
|
|
||||||
"byteOffset" : 5984,
|
|
||||||
"target" : 34963
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"samplers" : [
|
|
||||||
{
|
|
||||||
"magFilter" : 9729,
|
|
||||||
"minFilter" : 9987
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"buffers" : [
|
|
||||||
{
|
|
||||||
"byteLength" : 6568,
|
|
||||||
"uri" : "banner_blue.bin"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
{
|
|
||||||
"asset" : {
|
|
||||||
"generator" : "Khronos glTF Blender I/O v3.4.50",
|
|
||||||
"version" : "2.0"
|
|
||||||
},
|
|
||||||
"scene" : 0,
|
|
||||||
"scenes" : [
|
|
||||||
{
|
|
||||||
"name" : "Scene",
|
|
||||||
"nodes" : [
|
|
||||||
0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"nodes" : [
|
|
||||||
{
|
|
||||||
"mesh" : 0,
|
|
||||||
"name" : "banner_brown"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"materials" : [
|
|
||||||
{
|
|
||||||
"name" : "texture",
|
|
||||||
"pbrMetallicRoughness" : {
|
|
||||||
"baseColorTexture" : {
|
|
||||||
"index" : 0
|
|
||||||
},
|
|
||||||
"metallicFactor" : 0,
|
|
||||||
"roughnessFactor" : 0.44999998807907104
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meshes" : [
|
|
||||||
{
|
|
||||||
"name" : "banner_brown",
|
|
||||||
"primitives" : [
|
|
||||||
{
|
|
||||||
"attributes" : {
|
|
||||||
"POSITION" : 0,
|
|
||||||
"TEXCOORD_0" : 1,
|
|
||||||
"NORMAL" : 2
|
|
||||||
},
|
|
||||||
"indices" : 3,
|
|
||||||
"material" : 0
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"textures" : [
|
|
||||||
{
|
|
||||||
"sampler" : 0,
|
|
||||||
"source" : 0
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"mimeType" : "image/png",
|
|
||||||
"name" : "dungeon_texture",
|
|
||||||
"uri" : "dungeon_texture.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"accessors" : [
|
|
||||||
{
|
|
||||||
"bufferView" : 0,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 187,
|
|
||||||
"max" : [
|
|
||||||
0.7500076293945312,
|
|
||||||
3.7274699211120605,
|
|
||||||
0.6895275712013245
|
|
||||||
],
|
|
||||||
"min" : [
|
|
||||||
-0.749992847442627,
|
|
||||||
0.5313930511474609,
|
|
||||||
0.3776381015777588
|
|
||||||
],
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 1,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 187,
|
|
||||||
"type" : "VEC2"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 2,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 187,
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 3,
|
|
||||||
"componentType" : 5123,
|
|
||||||
"count" : 291,
|
|
||||||
"type" : "SCALAR"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"bufferViews" : [
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2244,
|
|
||||||
"byteOffset" : 0,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 1496,
|
|
||||||
"byteOffset" : 2244,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2244,
|
|
||||||
"byteOffset" : 3740,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 582,
|
|
||||||
"byteOffset" : 5984,
|
|
||||||
"target" : 34963
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"samplers" : [
|
|
||||||
{
|
|
||||||
"magFilter" : 9729,
|
|
||||||
"minFilter" : 9987
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"buffers" : [
|
|
||||||
{
|
|
||||||
"byteLength" : 6568,
|
|
||||||
"uri" : "banner_brown.bin"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
{
|
|
||||||
"asset" : {
|
|
||||||
"generator" : "Khronos glTF Blender I/O v3.4.50",
|
|
||||||
"version" : "2.0"
|
|
||||||
},
|
|
||||||
"scene" : 0,
|
|
||||||
"scenes" : [
|
|
||||||
{
|
|
||||||
"name" : "Scene",
|
|
||||||
"nodes" : [
|
|
||||||
0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"nodes" : [
|
|
||||||
{
|
|
||||||
"mesh" : 0,
|
|
||||||
"name" : "banner_green"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"materials" : [
|
|
||||||
{
|
|
||||||
"name" : "texture",
|
|
||||||
"pbrMetallicRoughness" : {
|
|
||||||
"baseColorTexture" : {
|
|
||||||
"index" : 0
|
|
||||||
},
|
|
||||||
"metallicFactor" : 0,
|
|
||||||
"roughnessFactor" : 0.44999998807907104
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meshes" : [
|
|
||||||
{
|
|
||||||
"name" : "banner_green",
|
|
||||||
"primitives" : [
|
|
||||||
{
|
|
||||||
"attributes" : {
|
|
||||||
"POSITION" : 0,
|
|
||||||
"TEXCOORD_0" : 1,
|
|
||||||
"NORMAL" : 2
|
|
||||||
},
|
|
||||||
"indices" : 3,
|
|
||||||
"material" : 0
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"textures" : [
|
|
||||||
{
|
|
||||||
"sampler" : 0,
|
|
||||||
"source" : 0
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"mimeType" : "image/png",
|
|
||||||
"name" : "dungeon_texture",
|
|
||||||
"uri" : "dungeon_texture.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"accessors" : [
|
|
||||||
{
|
|
||||||
"bufferView" : 0,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 187,
|
|
||||||
"max" : [
|
|
||||||
0.7500076293945312,
|
|
||||||
3.7274699211120605,
|
|
||||||
0.6895275712013245
|
|
||||||
],
|
|
||||||
"min" : [
|
|
||||||
-0.749992847442627,
|
|
||||||
0.5313930511474609,
|
|
||||||
0.3776381015777588
|
|
||||||
],
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 1,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 187,
|
|
||||||
"type" : "VEC2"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 2,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 187,
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 3,
|
|
||||||
"componentType" : 5123,
|
|
||||||
"count" : 291,
|
|
||||||
"type" : "SCALAR"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"bufferViews" : [
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2244,
|
|
||||||
"byteOffset" : 0,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 1496,
|
|
||||||
"byteOffset" : 2244,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2244,
|
|
||||||
"byteOffset" : 3740,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 582,
|
|
||||||
"byteOffset" : 5984,
|
|
||||||
"target" : 34963
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"samplers" : [
|
|
||||||
{
|
|
||||||
"magFilter" : 9729,
|
|
||||||
"minFilter" : 9987
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"buffers" : [
|
|
||||||
{
|
|
||||||
"byteLength" : 6568,
|
|
||||||
"uri" : "banner_green.bin"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
{
|
|
||||||
"asset" : {
|
|
||||||
"generator" : "Khronos glTF Blender I/O v3.4.50",
|
|
||||||
"version" : "2.0"
|
|
||||||
},
|
|
||||||
"scene" : 0,
|
|
||||||
"scenes" : [
|
|
||||||
{
|
|
||||||
"name" : "Scene",
|
|
||||||
"nodes" : [
|
|
||||||
0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"nodes" : [
|
|
||||||
{
|
|
||||||
"mesh" : 0,
|
|
||||||
"name" : "banner_patternA_blue"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"materials" : [
|
|
||||||
{
|
|
||||||
"name" : "texture",
|
|
||||||
"pbrMetallicRoughness" : {
|
|
||||||
"baseColorTexture" : {
|
|
||||||
"index" : 0
|
|
||||||
},
|
|
||||||
"metallicFactor" : 0,
|
|
||||||
"roughnessFactor" : 0.44999998807907104
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meshes" : [
|
|
||||||
{
|
|
||||||
"name" : "banner_patternA_blue",
|
|
||||||
"primitives" : [
|
|
||||||
{
|
|
||||||
"attributes" : {
|
|
||||||
"POSITION" : 0,
|
|
||||||
"TEXCOORD_0" : 1,
|
|
||||||
"NORMAL" : 2
|
|
||||||
},
|
|
||||||
"indices" : 3,
|
|
||||||
"material" : 0
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"textures" : [
|
|
||||||
{
|
|
||||||
"sampler" : 0,
|
|
||||||
"source" : 0
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"mimeType" : "image/png",
|
|
||||||
"name" : "dungeon_texture",
|
|
||||||
"uri" : "dungeon_texture.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"accessors" : [
|
|
||||||
{
|
|
||||||
"bufferView" : 0,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 220,
|
|
||||||
"max" : [
|
|
||||||
0.7500076293945312,
|
|
||||||
3.7274699211120605,
|
|
||||||
0.6895275712013245
|
|
||||||
],
|
|
||||||
"min" : [
|
|
||||||
-0.749992847442627,
|
|
||||||
0.5313930511474609,
|
|
||||||
0.3776381015777588
|
|
||||||
],
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 1,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 220,
|
|
||||||
"type" : "VEC2"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 2,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 220,
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 3,
|
|
||||||
"componentType" : 5123,
|
|
||||||
"count" : 330,
|
|
||||||
"type" : "SCALAR"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"bufferViews" : [
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2640,
|
|
||||||
"byteOffset" : 0,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 1760,
|
|
||||||
"byteOffset" : 2640,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2640,
|
|
||||||
"byteOffset" : 4400,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 660,
|
|
||||||
"byteOffset" : 7040,
|
|
||||||
"target" : 34963
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"samplers" : [
|
|
||||||
{
|
|
||||||
"magFilter" : 9729,
|
|
||||||
"minFilter" : 9987
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"buffers" : [
|
|
||||||
{
|
|
||||||
"byteLength" : 7700,
|
|
||||||
"uri" : "banner_patternA_blue.bin"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
{
|
|
||||||
"asset" : {
|
|
||||||
"generator" : "Khronos glTF Blender I/O v3.4.50",
|
|
||||||
"version" : "2.0"
|
|
||||||
},
|
|
||||||
"scene" : 0,
|
|
||||||
"scenes" : [
|
|
||||||
{
|
|
||||||
"name" : "Scene",
|
|
||||||
"nodes" : [
|
|
||||||
0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"nodes" : [
|
|
||||||
{
|
|
||||||
"mesh" : 0,
|
|
||||||
"name" : "banner_patternA_brown"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"materials" : [
|
|
||||||
{
|
|
||||||
"name" : "texture",
|
|
||||||
"pbrMetallicRoughness" : {
|
|
||||||
"baseColorTexture" : {
|
|
||||||
"index" : 0
|
|
||||||
},
|
|
||||||
"metallicFactor" : 0,
|
|
||||||
"roughnessFactor" : 0.44999998807907104
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meshes" : [
|
|
||||||
{
|
|
||||||
"name" : "banner_patternA_brown",
|
|
||||||
"primitives" : [
|
|
||||||
{
|
|
||||||
"attributes" : {
|
|
||||||
"POSITION" : 0,
|
|
||||||
"TEXCOORD_0" : 1,
|
|
||||||
"NORMAL" : 2
|
|
||||||
},
|
|
||||||
"indices" : 3,
|
|
||||||
"material" : 0
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"textures" : [
|
|
||||||
{
|
|
||||||
"sampler" : 0,
|
|
||||||
"source" : 0
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"mimeType" : "image/png",
|
|
||||||
"name" : "dungeon_texture",
|
|
||||||
"uri" : "dungeon_texture.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"accessors" : [
|
|
||||||
{
|
|
||||||
"bufferView" : 0,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 220,
|
|
||||||
"max" : [
|
|
||||||
0.7500076293945312,
|
|
||||||
3.7274699211120605,
|
|
||||||
0.6895275712013245
|
|
||||||
],
|
|
||||||
"min" : [
|
|
||||||
-0.749992847442627,
|
|
||||||
0.5313930511474609,
|
|
||||||
0.3776381015777588
|
|
||||||
],
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 1,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 220,
|
|
||||||
"type" : "VEC2"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 2,
|
|
||||||
"componentType" : 5126,
|
|
||||||
"count" : 220,
|
|
||||||
"type" : "VEC3"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"bufferView" : 3,
|
|
||||||
"componentType" : 5123,
|
|
||||||
"count" : 330,
|
|
||||||
"type" : "SCALAR"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"bufferViews" : [
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2640,
|
|
||||||
"byteOffset" : 0,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 1760,
|
|
||||||
"byteOffset" : 2640,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 2640,
|
|
||||||
"byteOffset" : 4400,
|
|
||||||
"target" : 34962
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"buffer" : 0,
|
|
||||||
"byteLength" : 660,
|
|
||||||
"byteOffset" : 7040,
|
|
||||||
"target" : 34963
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"samplers" : [
|
|
||||||
{
|
|
||||||
"magFilter" : 9729,
|
|
||||||
"minFilter" : 9987
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"buffers" : [
|
|
||||||
{
|
|
||||||
"byteLength" : 7700,
|
|
||||||
"uri" : "banner_patternA_brown.bin"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||