start of the /docs/wiki

This commit is contained in:
veclavtalica 2025-02-03 21:55:26 +03:00
parent 2286cdefeb
commit f4fccc08c4
4 changed files with 92 additions and 0 deletions

View File

@ -0,0 +1,34 @@
<!doctype html>
<html>
<head>
<title>Townengine Wiki : About Townengine</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1 style="margin-bottom:0in;">1. About Townengine</h1>
<a href="index.html">Go back
<p><a name="#introduction"></a><strong>1.1 </strong><strong>Introduction</strong>
<blockquote>
<p>Townengine (twn) is an opinionated game development framework designed around ideas of simplicity, managed state,
care for old devices, portability, language agnosticism, use-case orientation and iterability.
<p><b>Simplicity.</b> It makes assumptions that trickle down to your game code. There's no delta between frames, nor resolution change.
Textures have constant known size, not requiring scaling.
<p><b>Managed state.</b> Designed around this we can provide hot reloading at any point,
serialization for save files and debug dumps, as well as synchronization over network, without any user code.
Every frame apparent engine state is cleared, which removes another variable for you to handle, - when to initialize.
<p><b>Care for old devices.</b> It's to both to provide it for more people, who otherwise might not be able to make games they want,
as well as to have restrictions that constitute in desired aesthetic. Graphics capabilities are limited, but
what is present, - is heavily optimized. It is rather different from performance-driven approach that tries to take
advantage of the latest hardware and features, sacrificing both the reach and portability.
<p><b>Portability.</b> Written in C11 with all dependencies being in C, it's possible to compile it to most platforms.
SDL2 is at the center and you cannot get better than this. Default graphics API is OpenGL 1.5 with extension detection.
As an example, it builds and runs on Haiku OS with LLVMpipe.
<p><b>Language agnosticism.</b> API is restricted to not require much glue.
Language interpreters don't need to be part of the engine itself. Anything with C ABI support can link to it.
<p><b>Use-case orientation.</b> It doesn't try to be a yet another general purpose engine conquering all and nothing.
Instead we seek particular use cases and implement the most essential parts.
<p><b>Iterability.</b> Defaults provided for most of the API, making initial code faster to spring.
Hot reloading for both assets and code.
</blockquote>
</body>
</html>

24
docs/wiki/index.html Normal file
View File

@ -0,0 +1,24 @@
<!doctype html>
<html>
<head>
<title>Townengine Wiki</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1>Townengine Wiki</h1>
<table>
<tr>
<td><strong>1.</strong> <a href="#about-townengine">About Townengnine</a></td>
<td><strong>2.</strong> <a href="#making-2dot5d-shooters">Making 2.5D Shooters</a></td>
</tr>
</tbody></table>
<p><a name="#about-townengine"></a><strong>1. </strong><a href="about-townengine.html"><strong>About Townengine</strong></a></p>
<blockquote>
<p style="margin:0in;margin-left:0.5in;text-indent:-.5in">1.1
<a href="about-townengine.html#introduction">Introduction</a></p>
</blockquote>
<p><a name="#making-2dot5d-shooters"></a><strong>2. </strong><a href="making-2dot5d-shooters.html"><strong>Making 2.5D Shooters</strong></a></p>
<blockquote>
</blockquote>
</body>
</html>

19
docs/wiki/style.css Normal file
View File

@ -0,0 +1,19 @@
/* https://wiki.c2.com/?WikiStyle */
body { margin: 1em 2.3em 1em 1.5em; zoom: 150%}
h1 { font-size: 2.1em;
font-weight: bold;
}
p { margin-left: 0.2em;
}
blockquote {
font-style: normal;
}
pre { margin: 0em 3em 0em 2em;
color: rgb(20%,20%,50%); background-color: rgb(100%,100%,100%);
border: 1px solid rgb(50%,50%,50%);
padding: 1em;
font-size: 0.85em;
white-space: pre;
}
hr { color: rgb(30%,30%,60%);
}

15
docs/wiki/template.html Normal file
View File

@ -0,0 +1,15 @@
<!doctype html>
<html>
<head>
<title>Townengine Wiki : {About}</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1 style="margin-bottom:0in;">1. {About}</h1>
<a href="index.html">Go back
<p><a name="#{Section}"></a><strong>1.1 </strong><strong>{Section}</strong>
<blockquote>
<p>Text
</blockquote>
</body>
</html>