<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Job Talle</title><description>A blog about software development, AI and Algorithms</description><link>https://jobtalle.com</link><lastBuildDate>Fri, 02 Jun 2023 08:00:00 GMT</lastBuildDate><ttl>1440</ttl><item><title>Distance field transparency</title><description>Edges of partially transparent textures and sprites look pixelated and jagged when magnified. To increase the quality of these edges, signed distance fields can be used to render smooth edges that don't lose detail when zoomed in. This article provides a fast method and a tool to generate SDFs, and it goes into several ways of rendering them.</description><link>https://jobtalle.com/distance_field_transparency.html</link><guid isPermaLink="true">https://jobtalle.com/distance_field_transparency.html</guid><pubDate>Fri, 02 Jun 2023 08:00:00 GMT</pubDate></item><item><title>Digital koi breeding</title><description>In my fish breeding game Koi Farm, an infinite number of koi patterns can be explored through crossbreeding. The techniques I've used to simulate pattern mutation and crossbreeding are explained in this article, and an interactive javascript based pattern generator and mutator is included to demonstrate the algorithms.</description><link>https://jobtalle.com/digital_koi_breeding.html</link><guid isPermaLink="true">https://jobtalle.com/digital_koi_breeding.html</guid><pubDate>Sun, 12 Jun 2022 08:00:00 GMT</pubDate></item><item><title>Rendering symmetry</title><description>Symmetry or reflections can be rendered by defining plane surfaces through which things need to be reflected and mirroring the scene through the planes. This article details a shader algorithm that can be used to render geometry with one or more symmetry planes applied to it in real time.</description><link>https://jobtalle.com/rendering_symmetry.html</link><guid isPermaLink="true">https://jobtalle.com/rendering_symmetry.html</guid><pubDate>Tue, 23 Feb 2021 08:00:00 GMT</pubDate></item><item><title>Random procedural generation</title><description>Procedural content randomization can lead to interesting outcomes, but randomness needs to be limited and guided for good results. This article illustrates several techniques that can be used to achieve that goal with interactive javascript examples.</description><link>https://jobtalle.com/random_procedural_generation.html</link><guid isPermaLink="true">https://jobtalle.com/random_procedural_generation.html</guid><pubDate>Thu, 11 Feb 2021 08:00:00 GMT</pubDate></item><item><title>Evolving Lindenmayer systems</title><description>Lindenmayer systems have been developed to model plant growth. An evolutionary algorithm can be used to simulate competitive plant evolution using L-systems. The systems themselves represent DNA, while the structures they produce represent plants. This technique gives rise to interesting yet familiar plant-like structures.</description><link>https://jobtalle.com/evolving_lindenmayer_systems.html</link><guid isPermaLink="true">https://jobtalle.com/evolving_lindenmayer_systems.html</guid><pubDate>Tue, 20 Oct 2020 08:00:00 GMT</pubDate></item><item><title>Simulating hydraulic erosion</title><description>Terrain features are to a high degree shaped by hydraulic erosion. Several algorithms exist for simulating this process that vary in realism and computational complexity. This article proposes a simple and fast method that produces realistic looking results.</description><link>https://jobtalle.com/simulating_hydraulic_erosion.html</link><guid isPermaLink="true">https://jobtalle.com/simulating_hydraulic_erosion.html</guid><pubDate>Sun, 14 Jun 2020 08:00:00 GMT</pubDate></item><item><title>Neuroevolution in squids</title><description>Artificial neural networks can be trained to perform certain tasks, but they can also be the product of simulated evolution. Evolved nervous systems are created according to a genetic blueprint. This article demonstrates squids swimming efficiently using tentacles controlled by an evolved neural network.</description><link>https://jobtalle.com/neuroevolution_in_squids.html</link><guid isPermaLink="true">https://jobtalle.com/neuroevolution_in_squids.html</guid><pubDate>Fri, 24 Apr 2020 08:00:00 GMT</pubDate></item><item><title>Layered voxel rendering</title><description>Voxels scenes can be rendered using layered voxel rendering by splitting the scene into image layers and pre-shading the voxels. The method is trivial to implement and surprisingly performant. This article walks through the process and demonstrates a procedural island generator using this technique.</description><link>https://jobtalle.com/layered_voxel_rendering.html</link><guid isPermaLink="true">https://jobtalle.com/layered_voxel_rendering.html</guid><pubDate>Mon, 11 Nov 2019 08:00:00 GMT</pubDate></item><item><title>Convolutional textures</title><description>Self-updating textures can be used to achieve impressive visual effects using the GPU. In this article I demonstrate four interactive applications of this technique, ranging from simple cellular automata to displacing vegetation and simulating waves in a body of water.</description><link>https://jobtalle.com/convolutional_textures.html</link><guid isPermaLink="true">https://jobtalle.com/convolutional_textures.html</guid><pubDate>Mon, 07 Jan 2019 08:00:00 GMT</pubDate></item><item><title>Simulated ecosystems</title><description>Ecosystems can be simulated to observe and understand their behaviour. In a closed ecosystem, nothing enters or leaves the system from the outside world. I simulate and explore such a system in this article, and I discuss its real world similarities and applications.</description><link>https://jobtalle.com/simulated_ecosystems.html</link><guid isPermaLink="true">https://jobtalle.com/simulated_ecosystems.html</guid><pubDate>Mon, 03 Dec 2018 08:00:00 GMT</pubDate></item><item><title>Swarm behaviour</title><description>Swarm behaviour can be simulated using a few simple rules. Implementing these rules enables us to simulate flocking birds, schooling fish and swarming crowds. In this article, I walk through the process of implementing this algorithm.</description><link>https://jobtalle.com/swarm_behaviour.html</link><guid isPermaLink="true">https://jobtalle.com/swarm_behaviour.html</guid><pubDate>Thu, 01 Feb 2018 08:00:00 GMT</pubDate></item><item><title>Lindenmayer systems</title><description>Lindenmayer systems (or L-systems) can be used to produce intricate patterns by repeatedly applying production rules. Rendering these systems results in interesting fractals that can be useful in procedural generation. A method for rendering 3D Lindenmayer systems is demonstrated.</description><link>https://jobtalle.com/lindenmayer_systems.html</link><guid isPermaLink="true">https://jobtalle.com/lindenmayer_systems.html</guid><pubDate>Sat, 16 Dec 2017 08:00:00 GMT</pubDate></item><item><title>2D platformer physics</title><description>In this tutorial I walk through the process of writing a simple grid based platformer in javascript. The result is a universal platform physics engine suitable for any platformer. This implementation uses edge collisions instead of cell collisions, which allows for more compact level design.</description><link>https://jobtalle.com/2d_platformer_physics.html</link><guid isPermaLink="true">https://jobtalle.com/2d_platformer_physics.html</guid><pubDate>Tue, 07 Nov 2017 08:00:00 GMT</pubDate></item><item><title>Cubic noise</title><description>Coherent random noise can be used to create a great variety of effects. The algorithm for generating cubic noise is explained. An interactive cubic noise generator is inclued, as well as a procedural terrain generator.</description><link>https://jobtalle.com/cubic_noise.html</link><guid isPermaLink="true">https://jobtalle.com/cubic_noise.html</guid><pubDate>Tue, 31 Oct 2017 08:00:00 GMT</pubDate></item></channel></rss>