Files
atomic-engine/web/index.html
T
nico 1bce9da0c6 Initial commit: AtomicEngine v0.2
- Rust/WASM physics engine (grid, material, physics, render_buffer)
- 16 material types (stone, sand, water, wood, fire, lava, glass, ice, oil, acid, steam, spark, smoke + player placeholder)
- Fire system (fuel-based, flammability-scaled consumption, spread, smoke/sparks)
- Lighting system (emission, flood-fill propagation, glow, reflection)
- Per-material pixel texturing (wood grain, dirt specks, stone noise, flame variation)
- WebGL2 renderer with camera (WASD move, mouse wheel zoom)
- Native x86 debug binary (identical dimensions, FPS counter)
- Large world 1024x768 with active-region simulation (camera + 200px margin)
- UI material palette + FPS display
2026-07-09 11:13:39 +02:00

95 lines
2.1 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>AtomicEngine</title>
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body { width: 100%; height: 100%; overflow: hidden; background: #000; }
canvas {
display: block;
position: absolute;
top: 0;
left: 0;
}
#panel {
position: fixed;
bottom: 8px;
left: 50%;
transform: translateX(-50%);
display: flex;
gap: 2px;
padding: 4px 8px;
background: rgba(0,0,0,0.7);
border-radius: 6px;
z-index: 10;
font-family: monospace;
font-size: 10px;
color: #ccc;
user-select: none;
}
.mat {
display: flex;
flex-direction: column;
align-items: center;
padding: 3px 4px;
border-radius: 4px;
cursor: default;
min-width: 36px;
border: 1px solid transparent;
transition: background 0.1s;
}
.mat.active {
background: rgba(255,255,255,0.15);
border-color: rgba(255,255,255,0.5);
}
.mat .swatch {
width: 14px;
height: 14px;
border-radius: 2px;
margin-bottom: 2px;
}
.mat .label {
text-align: center;
line-height: 1;
}
.mat .key {
color: #888;
}
#info {
position: fixed;
top: 8px;
left: 8px;
color: #fff;
font-family: monospace;
font-size: 11px;
background: rgba(0,0,0,0.6);
padding: 4px 8px;
border-radius: 4px;
z-index: 10;
}
#fps {
position: fixed;
top: 8px;
right: 8px;
color: #0f0;
font-family: monospace;
font-size: 14px;
font-weight: bold;
background: rgba(0,0,0,0.6);
padding: 4px 8px;
border-radius: 4px;
z-index: 10;
}
</style>
</head>
<body>
<canvas id="canvas"></canvas>
<div id="info">AtomicEngine v0.2</div>
<div id="fps">60 FPS</div>
<div id="panel"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>