commit a79ef7a426a9f218650127272c6ea84d04dca2dd
parent 99fe89f8cf44c550b13aa488045ec5e691971861
Author: Charles Baptista <charles@charlesbaptista.com>
Date: Sat, 25 Jul 2020 20:23:29 -0400
Updated tapestry content
Diffstat:
1 file changed, 31 insertions(+), 5 deletions(-)
diff --git a/tapestry.html b/tapestry.html
@@ -31,15 +31,41 @@
<div id="center_content">
<h3>Tapestry Engine</h3>
<p><img src="./imgs/cropped-screen1.png"/></p>
- <p>The Tapestry game engine is a 2D side-scroller engine written in C++ using the <a href="https://www.libsdl.org/" target="_blank">SDL2</a> library. Over the year+ of time I’ve dedicated to the project it’s grown from a window with a couple static images drifting around to a complex and powerful program that features actors, animation, sound, terrain & water physics, actor collisions, level loading, events, and particles among a number of other systems.</p>
+ <p>
+ Tapestry is 2D platformer game engine written in C++ using
+ <a href="https://www.libsdl.org/">SDL2</a> for rendering. I started
+ writing it in 2015 and kept adding more over the next few years. it was
+ my first big programming project. I remember a very early version with
+ just few colored boxes sliding around in a window.
+
+ Over time I developed many little systems to do more and more;
+ <ul>
+ <li>Animations with configurable graphs to automatically play transitions between loops</li>
+ <li>A physics system with pixel for pixel terrain collision</li>
+ <li>Springy water physics with splash effects</li>
+ <li>An event system to let objects communicate with each other</li>
+ <li>Onscreen UI widgets</li>
+ <li>Levels loaded and configured from JSON</li>
+ <li>And more...</li>
+ </ul>
+ </p>
+
<p><img src="./imgs/screen2-768x344.png"/></p>
+ <p>
+ All these images are screenshots from test levels I made with fantastic
+ art assets created by my sister, <a href="https://sofiabaptistacrafts.wordpress.com/">Sofia Baptista</a>.</p>
+ </p>
+ <p>
+ You can download in it's current state from my git:
+ </p>
+ <p><tt>git clone git.charlesbaptista.com/tapestryengine</tt></p>
<p><img src="./imgs/screen6-300x297.png"/></p>
- <p>Developing this program has been an extremely fun and instructive process. It has presented me with a wide range of unique problems to solve and systems to engineer; from text wrapping and scrolling to writing my own <a href="http://charlesbaptista.com/2016/12/22/red-black-trees/">red-black trees</a> to JSON based level loading. This project continuously pushes my horizons as a programmer and always presents new challenges.</p>
+ <p>
+ Game programming is a great way to learn. It provides ample and various challenges,
+ and it's fun to watch all your systems work together to create a little illusion.
+ </p>
<p><img src="./imgs/screen6-1-768x432.png"/></p>
<p><img src="./imgs/screen4-768x329.png"/></p>
- <p> </p>
- <p>All the images shown are screenshots from levels created in the engine. Art assets created by <a href="https://sofiabaptistacrafts.wordpress.com/">Sofia Baptista</a>.</p>
- <p> </p>
</div>
</body>