From f4fccc08c4809b1c847273eaa1e8078f2c23862c Mon Sep 17 00:00:00 2001 From: veclavtalica Date: Mon, 3 Feb 2025 21:55:26 +0300 Subject: [PATCH] start of the /docs/wiki --- docs/wiki/about-townengine.html | 34 +++++++++++++++++++++++++++++++++ docs/wiki/index.html | 24 +++++++++++++++++++++++ docs/wiki/style.css | 19 ++++++++++++++++++ docs/wiki/template.html | 15 +++++++++++++++ 4 files changed, 92 insertions(+) create mode 100644 docs/wiki/about-townengine.html create mode 100644 docs/wiki/index.html create mode 100644 docs/wiki/style.css create mode 100644 docs/wiki/template.html diff --git a/docs/wiki/about-townengine.html b/docs/wiki/about-townengine.html new file mode 100644 index 0000000..e533bde --- /dev/null +++ b/docs/wiki/about-townengine.html @@ -0,0 +1,34 @@ + + + + Townengine Wiki : About Townengine + + + +

1. About Townengine

+ Go back +

1.1 Introduction +

+

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. +

Simplicity. 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. +

Managed state. 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. +

Care for old devices. 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. +

Portability. 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. +

Language agnosticism. 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. +

Use-case orientation. 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. +

Iterability. Defaults provided for most of the API, making initial code faster to spring. + Hot reloading for both assets and code. +

+ + diff --git a/docs/wiki/index.html b/docs/wiki/index.html new file mode 100644 index 0000000..87d3a7c --- /dev/null +++ b/docs/wiki/index.html @@ -0,0 +1,24 @@ + + + + Townengine Wiki + + + +

Townengine Wiki

+ + + + + +
1. About Townengnine2. Making 2.5D Shooters
+

1. About Townengine

+
+

1.1 + Introduction

+
+

2. Making 2.5D Shooters

+
+
+ + diff --git a/docs/wiki/style.css b/docs/wiki/style.css new file mode 100644 index 0000000..f44da73 --- /dev/null +++ b/docs/wiki/style.css @@ -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%); + } diff --git a/docs/wiki/template.html b/docs/wiki/template.html new file mode 100644 index 0000000..c935b2a --- /dev/null +++ b/docs/wiki/template.html @@ -0,0 +1,15 @@ + + + + Townengine Wiki : {About} + + + +

1. {About}

+ Go back +

1.1 {Section} +

+

Text +

+ +