tile-picking-interaction
/tile-picking-interaction
Zamienia pozycję myszy lub dotyku na właściwy kafelek izometryczny do zaznaczania, podświetlania i stawiania obiektów.
- Autor
- 0xheycat ↗
- Repozytorium
- isometric-game-skills ↗
- Licencja
- MIT
- Ostatnia zmiana repozytorium
- 12.08.2026
Ocena i bezpieczeństwo
- Pliki w paczce
- 1
- Skrypty
- 0
- Komentarze HTML
- 0
- Adresy URL w SKILL.md
- 0
Brak sygnałów. Repozytorium zmienione 12.08.2026, bez odwołań do wycofanych modeli i API.
MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.
Co robi i kiedy
Zamienia pozycję myszy lub dotyku na właściwy kafelek izometryczny do zaznaczania, podświetlania i stawiania obiektów.
Oryginalny opis (EN)
Use when converting a mouse/touch position into the correct isometric tile for selection, highlighting, and placement.
Jak działa
- Overview
- When to Use
- Process
- Rationalizations (Stop Lying to Yourself)
- Red Flags - STOP if you catch yourself:
- Verification
Podgląd SKILL.md
--- name: tile-picking-interaction description: Use when converting a mouse/touch position into the correct isometric tile for selection, highlighting, and placement. license: MIT --- # Tile Picking & Interaction ## Overview Picking is screen->grid with the camera inverse applied first. This skill turns a pointer position into the exact tile under it, with a highlight and hit-test that respects camera pan/zoom. ## When to Use - Clicking selects the wrong tile. - You need hover highlight or click-to-place. - Picking ignores camera pan/zoom. ## Process 1. Take the pointer position in screen space. 2. Apply the inverse camera transform (see `camera-pan-zoom-controls`). 3. Apply screen->grid from `isometric-grid-math` and round to a tile. 4. Clamp the result to map bounds and check walkable if needed. 5. Draw a highlight on the picked tile for feedback. 6. On click, dispatch the tile coord to the gameplay handler. 7. Test picking at multiple zoom levels and pan offsets. ```js const world = screenToWorld(pointer, cam); const tile = worldToGrid(world, W, H); // then round ``` ## Rationalizations (Stop Lying to Yourself) | Excuse | Reality | |---|---| | "I will skip the camera inverse" | Then picking breaks the moment you pan/zoom. Always invert. | | "No need to highlight" | Players need feedback on what they will click. Highlight. | ## Red Flags - STOP if you catch yourself: - Picking that ignores camera pan/zoom. - No rounding so edge tiles mis-select. - No visual highlight feedback. ## Verification You are NOT done until every box is checked: - [ ] Picked tile is correct at any pan and zoom. - [ ] Hover highlight matches the actual selected tile. - [ ] Clicks dispatch the right grid coordinate.
Wersje
W bazie nie ma innych skilli o nazwie tile-picking-interaction.
Migawka bazy z 28.10.2026 · wersja paczki 79fcf4101940 (skrót SHA-256 całej paczki)
Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.
Podobne skille
- 95threejs-interaction
Obsługuje interakcje w Three.js: raycasting, kontrolki kamery, wejście z myszy i dotyku, zaznaczanie obiektów i wykrywanie kliknięć. - 95threejs-interaction
Obsługuje interakcje w Three.js: raycasting, kontrolki kamery, wejście z myszy i dotyku, zaznaczanie obiektów i wykrywanie kliknięć. - 100threejs-interaction
Obsługuje interakcję w Three.js: raycasting, kontrolki, wejście myszy i dotyku oraz zaznaczanie obiektów, przy wykrywaniu kliknięć i kontroli kamery. - 95cesiumjs-interaction
Obsługuje interakcje i picking w CesiumJS: ScreenSpaceEventHandler, skróty z klawiszami modyfikującymi, Scene.pick, drillPick, pickPosition, snapowanie do krawędzi modeli oraz zdarzenia myszy i dotyku. - 100input-system
Obsługuje wejście gracza w Godot na klawiaturze, myszy, gamepadzie i dotyku: akcje wejścia, wirtualne joysticki, tryby myszy i system zmiany przypisań. - 100threejs-interaction
Obsługuje kliknięcia i dotyk w scenie Three.js: raycasting, wybór obiektów i sterowanie kamerą.