<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Procedural-Generation on Steven&#39;s blog</title>
    <link>https://landow.dev/tags/procedural-generation/</link>
    <description>Recent content in Procedural-Generation on Steven&#39;s blog</description>
    <generator>Hugo -- 0.152.2</generator>
    <language>en</language>
    <lastBuildDate>Wed, 13 Sep 2023 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://landow.dev/tags/procedural-generation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>3D Autotiling pt. 1: Basic WFC</title>
      <link>https://landow.dev/posts/wfc-01-basic-wfc/</link>
      <pubDate>Wed, 13 Sep 2023 00:00:00 +0000</pubDate>
      <guid>https://landow.dev/posts/wfc-01-basic-wfc/</guid>
      <description>&lt;video style=&#34;width: 100%&#34;, src=&#34;02-basic-wfc/generate.webm&#34; autoplay muted loop&gt;&lt;/video&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;I don&amp;rsquo;t think I would have become interested in shooters if it weren&amp;rsquo;t for Halo
3&amp;rsquo;s forge mode. I probably logged 1000 hours in Minecraft when I was a kid (and
learned Java because of it!). Games that let you make stuff are the best. Making
games is even better. After a few years focusing on my career in network programming
I decided to revisit games, this time looking at 3D.&lt;/p&gt;</description>
    </item>
    <item>
      <title>3D Autotiling pt. 2: Expanding and Optimizing</title>
      <link>https://landow.dev/posts/wfc-02-advanced-wfc/</link>
      <pubDate>Wed, 13 Sep 2023 00:00:00 +0000</pubDate>
      <guid>https://landow.dev/posts/wfc-02-advanced-wfc/</guid>
      <description>&lt;video style=&#34;width: 100%&#34;, src=&#34;demo.webm&#34; autoplay muted loop&gt;&lt;/video&gt;

&lt;p&gt;In the last post we were able to randomly generate &amp;ldquo;correct&amp;rdquo; looking 3D
shapes. However, my goal was something that a user or game developer
could create levels with. Let&amp;rsquo;s look at our requirements:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The user should have direct control of the generation. &lt;a href=&#34;https://www.boristhebrave.com/2021/06/06/driven-wavefunctioncollapse/&#34;&gt;BorisTheBrave
describes&lt;/a&gt;
calls this &amp;ldquo;Driven WFC&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;We need a lot of tiles. That would take a lot of time to model for a game developer.
This isn&amp;rsquo;t totally avoidable, but we can optimize our workflow.&lt;/li&gt;
&lt;li&gt;If the user is going to interact with this, the algorithm for solving the generation
needs to be fast. Our naive implementation needs a major upgrade.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;driving-wfc&#34;&gt;Driving WFC&lt;/h2&gt;
&lt;h3 id=&#34;initial-constraint&#34;&gt;Initial Constraint&lt;/h3&gt;
&lt;p&gt;Our method of &amp;ldquo;driving&amp;rdquo; WFC will be specifying which cells aren&amp;rsquo;t empty
as an initial contraint.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
