Name DungeonCraft, 3D-Entscheidungen dokumentiert
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
b4b4fea45b
commit
80f8335b6d
5 files changed
+13
-8
No files matched your search
+1
-1
@@ -6,4 +6,4 @@
|
|||||||
- Datei: `assets/dbyte_1x.png` (unverändert). Im Spiel wird sie ganzzahlig skaliert und eingefärbt dargestellt.
|
- Datei: `assets/dbyte_1x.png` (unverändert). Im Spiel wird sie ganzzahlig skaliert und eingefärbt dargestellt.
|
||||||
|
|
||||||
## Alles andere
|
## Alles andere
|
||||||
Code, prozedurale Grafiken und Spieldesign: Dungeoncraft-Projekt.
|
Code, prozedurale Grafiken und Spieldesign: DungeonCraft-Projekt.
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
# Dungeoncraft – Design-Entscheidungen
|
# DungeonCraft – Design-Entscheidungen
|
||||||
|
|
||||||
Eigenständiges Dungeon-Management-Spiel (Genre: Dungeon-Aufbau & Verteidigung), läuft als WASM im Browser.
|
Eigenständiges Dungeon-Management-Spiel (Genre: Dungeon-Aufbau & Verteidigung), läuft als WASM im Browser.
|
||||||
|
|
||||||
@@ -10,8 +10,13 @@ Eigenständiges Dungeon-Management-Spiel (Genre: Dungeon-Aufbau & Verteidigung),
|
|||||||
- Sound: Event-System + macroquad-Audio vorbereitet (Lautstärke, Stumm-Taste M); Klänge werden später generiert
|
- Sound: Event-System + macroquad-Audio vorbereitet (Lautstärke, Stumm-Taste M); Klänge werden später generiert
|
||||||
|
|
||||||
## Grafik
|
## Grafik
|
||||||
- Top-Down, **prozedurale Pixelart**: Kacheln und Figuren-Sprites werden im Code erzeugt
|
- **3D**, **echt isometrisch** (orthografische Kamera)
|
||||||
- Wände mit Pseudo-3D-Schattierung, Minikarte
|
- Kamera **frei 360° drehbar + neigbar**
|
||||||
|
- Wände mit **unregelmäßiger Oberfläche** (Rauschverformung der Wandflächen, nahtlos zwischen Nachbarn)
|
||||||
|
- Texturen: **prozedurale Pixelart** (Kachel-Atlas)
|
||||||
|
- Figuren: **Pixel-Sprites als Billboards** (immer zur Kamera gedreht)
|
||||||
|
- Licht: **Dunkel + Fackeln** – Grunddunkelheit, eroberte Bereiche und Lichtquellen (Fackeln, Kern, Portal, Tor) hell, flackerndes Licht
|
||||||
|
- UI bleibt 2D-Ebene darüber, Minikarte
|
||||||
|
|
||||||
## Steuerung
|
## Steuerung
|
||||||
- Linksklick: aktives Werkzeug benutzen (Rechteck aufziehen für Graben/Räume)
|
- Linksklick: aktives Werkzeug benutzen (Rechteck aufziehen für Graben/Räume)
|
||||||
|
|||||||
+2
-2
@@ -1,4 +1,4 @@
|
|||||||
// Dungeoncraft – Dungeon-Aufbau & Verteidigung im Browser (Rust + macroquad, WASM).
|
// DungeonCraft – Dungeon-Aufbau & Verteidigung im Browser (Rust + macroquad, WASM).
|
||||||
|
|
||||||
mod game;
|
mod game;
|
||||||
mod gfx;
|
mod gfx;
|
||||||
@@ -16,7 +16,7 @@ use sound::SoundBank;
|
|||||||
use ui::{hover_info, Tool, Ui, UiAction, TOOLS};
|
use ui::{hover_info, Tool, Ui, UiAction, TOOLS};
|
||||||
|
|
||||||
fn conf() -> Conf {
|
fn conf() -> Conf {
|
||||||
Conf { window_title: "Dungeoncraft".into(), window_width: 1280, window_height: 800, high_dpi: false, ..Default::default() }
|
Conf { window_title: "DungeonCraft".into(), window_width: 1280, window_height: 800, high_dpi: false, ..Default::default() }
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Input {
|
struct Input {
|
||||||
|
|||||||
@@ -436,7 +436,7 @@ impl Ui {
|
|||||||
let sh = screen_height();
|
let sh = screen_height();
|
||||||
let x = ((sw - cols as f32 * CW) * 0.5).max(0.0);
|
let x = ((sw - cols as f32 * CW) * 0.5).max(0.0);
|
||||||
let y = ((sh - rows as f32 * CH) * 0.5).max(0.0);
|
let y = ((sh - rows as f32 * CH) * 0.5).max(0.0);
|
||||||
gfx.window_titled(x, y, cols, rows, S, true, FRAME_HI, Color::new(0.05, 0.03, 0.04, 0.97), "DUNGEONCRAFT", FRAME_HI);
|
gfx.window_titled(x, y, cols, rows, S, true, FRAME_HI, Color::new(0.05, 0.03, 0.04, 0.97), "DungeonCraft", FRAME_HI);
|
||||||
for (k, (l, c)) in lines.iter().enumerate() {
|
for (k, (l, c)) in lines.iter().enumerate() {
|
||||||
gfx.text(l, x + CW * 3.0, y + CH * (k as f32 + 2.0), S, *c);
|
gfx.text(l, x + CW * 3.0, y + CH * (k as f32 + 2.0), S, *c);
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -2,7 +2,7 @@
|
|||||||
<html lang="de">
|
<html lang="de">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<title>Dungeoncraft</title>
|
<title>DungeonCraft</title>
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<style>
|
<style>
|
||||||
html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: #080608; }
|
html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: #080608; }
|
||||||
|
|||||||
Reference in new issue
Block a user