tag:blogger.com,1999:blog-6411466159651871902024-02-02T09:58:22.274+00:00The Symbiosis of Software and HardwareI've long thought that more can be achieved through greater cross-pollenation between discipline domains, that people should specialise in a little more than one area, that we should explore the possibilities of mixing techniques together in creative and interesting ways, and do it through the play that using highly interactive tools and flexible, modular architecture allows.Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.comBlogger36125tag:blogger.com,1999:blog-641146615965187190.post-65163059692828258372017-04-30T19:30:00.000+01:002017-04-30T19:30:02.530+01:00This Island Apparance
The
Story So Far
Exactly one year ago
Lionhead Studios closed its doors.
Whilst a sad occasion, this set many people on journeys of opportunity,
branching out, putting ideas into action, and creating new things of their own. For me this was the chance to fully apply
myself to fleshing out Apparance. I knew
that I wouldn't have time to finish a game built around it nor Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-76231134466034782872017-02-26T22:27:00.000+00:002017-02-26T22:27:51.065+00:00Project Progress Report
Sorry for the lull,
it's been a bit of a mixed-up month and this will be a similarly mixed up blog
post. Having reached the deadline for
demo, web site, and release preparations at the end January things have changed
pace and direction a little. I've rolled
an Alpha build to a few people, the web-site has gone live, and I've been out
job hunting too!
Goals
The end of January
was Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-35497774234072264392017-01-30T13:07:00.000+00:002017-01-30T13:07:18.141+00:00Future City: Update 11 - Block Interfacing
Progress on Future
City has been slowed by web-site and release preparation work at the
moment. I've split my time about 2:2:1
between Web site, Future City, and Alpha Release preparations.
January push towards Web Site, City demo, and Alpha Release.
This split in
attention as well as the pressure of the approaching alpha release means blog
posts have been slower forming. Let's
Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-64545139790886777292017-01-16T20:47:00.001+00:002017-01-16T20:47:16.329+00:00Procedural Website? - Part 2
Recap
In Part 1 we
proposed using Apparance as a text processor and tool automation controller to
build our web-site. So, how exactly
would we go building about this?
The Apparance web site prototype.
Page
Structure
Browsing a few basic
web tutorials on how to set up a fairly standard CSS styled HTML page we are
looking at this:
Title banner and
logo
Site navigation bar
Page Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-17527984271709234632017-01-09T10:54:00.000+00:002017-01-16T18:34:32.315+00:00Procedural Website? - Part 1
Web
Site Needed
Apparance is at the
stage now where it needs a proper web-site to bring together all the
information accumulating around the project and provide a hub for people to
find out all about it. It's going to
need all the usual stuff; summary pages, a gallery, detailed project information, feature lists,
technical information, contact information, blog, documentation, and contactSam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com2tag:blogger.com,1999:blog-641146615965187190.post-44335634453573753092016-12-13T12:41:00.000+00:002016-12-13T12:41:21.507+00:00Future City: Update 10 - Progress Gallery
Not many words
today, just a quick rundown of the new and improved aspects of the city.
Aerospace
A quick
space-port/airport cobbled together from other city parts to just get rid of
the last placeholder zones.
First pass aerospace district, the black will be landing areas for ships.
Parks
Time for some low
level detailing, quickly knocked up and assembled a variety of simple
small-scale Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com1tag:blogger.com,1999:blog-641146615965187190.post-69489163748974859932016-12-04T17:44:00.001+00:002016-12-04T17:44:21.294+00:00A Case Of Non-Randomness - Part 2
The
Problem
I was just starting
to set up the procedures needed for rows of buildings when I hit a problem.
Bad randomness showing up in row of buildings
These are supposed
to be random heights! I've had a nagging
feeling that my random number generation operators weren't working properly and
had noticed a few artefacts before, but dismissed them as me being overly sensitive
to Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-48233366151194678422016-11-28T15:39:00.002+00:002016-11-28T15:39:40.345+00:00A Case Of Non-Randomness - Part 1
In preparation for a
post about a randomness bug I found, let's look at some of what's going on
behind the scenes in Apparance with random number generation, propagation, and manipulation.
Premise
The random number
generation in Apparance is based on two main principals:
Generating a repeatable
sequence of random values.
Branching of random number
sequences.
These are embodied
Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-74538433999120472172016-11-21T11:32:00.002+00:002016-11-21T11:32:55.712+00:00Guildford Game Jam 2016 - Follow-up
Tidy
Up
After finishing the
game-jam there were a few things I needed (wanted) to do before uploading it
for anyone to play.
Rendering
stutter
- performance on lower spec machines was terrible.
Collision
and physics - so
you could walk around the maze, confined to the rooms.
Additional
detail - the
walls were a bit plain and were supposed to be brickwork.
Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-30747835484232366622016-11-07T18:31:00.000+00:002016-11-07T18:31:34.129+00:00Guildford Game Jam 2016
Jam
This weekend I
attended the Guildford Game Jam organised by @Kilo_bytes and hosted at the new offices of the lovely @RocketdeskUK. There were about 15+ people in
teams of one to four with a few floating jammers creating audio and art assets for multiple teams. I took my creaky old laptop and managed to
build a game using Apparance in the two (and a bit) days.
Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-25355211347368524512016-10-31T18:53:00.000+00:002016-10-31T18:53:57.665+00:00Future City: Update 9 - Apartment Construction
Apartments
I've
been thinking about how to build interesting residential apartment buildings,
that look more futuristic than just boxes with windows. A few ideas come
to mind:
Surface
objects -
balconies, air-con units, ducting, etc.
Surface
projections -
bits that stick out, and in-turn have windows/etc.
Multi-part
buildings -
intersecting Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-67897831475250262972016-10-24T11:42:00.004+01:002016-10-24T11:42:50.916+01:00Future City: Update 8 - A Mixed Bag
I haven't managed to write anything this last week (or two) due to other things going on in my life (shock!), and not really feeling like I've
been focused on one particular thing.
Instead of a themed post let's just have a look through what's been going on.
Refinement
Fixes
Spent some time
tidying up the city a bit. There are a
few places where detail refinement was being blockedSam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-30567463237654296762016-10-12T15:07:00.003+01:002016-10-12T15:07:58.141+01:00Future City: Update 7 - Building a Better Skyscraper
Sorry for the late
post, a few mad things going on at the moment.
One of which was the Rocketjump event in Bournemouth which @dannyt of @Moov2 invited me to, to showcase Apparance. A
lovely little event with some great speakers and games to see, where I got to
show Apparance to a few more people.
Skyscrapers
Last week I decided
that the stand-in skyscrapers were too dull and Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-57076639721531456172016-10-03T11:11:00.000+01:002016-10-03T11:11:33.214+01:00One Million Bytes
A slight aside today
while I play with futuristic skyscraper shapes.
I'm not going to talk about cities, instead this post is about an
interesting technical aspect of the synthesis engine; the use of the call
stack.
The
Stack
Typically the stack
is something that most programs and programmers don't need to worry about,
ever. Programs tend to rarely have a
call graph that goes evenSam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-12572695595827479592016-09-28T13:12:00.000+01:002016-09-28T13:12:07.761+01:00Future City: Update 6 - A Balancing Act
Industrial
Zone
Using the previous
steel structure procedures and some new bits and pieces I've been building a
few elements for populating the industrial areas of the city. For now we have:
Warehouse or factory
building, with roof-top windows/solar panels, and chimneys.
Round storage silo or tank,
with and without steel support structure around it.
Simple tower based on the
Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com6tag:blogger.com,1999:blog-641146615965187190.post-50217335773822119412016-09-18T20:00:00.000+01:002016-09-19T09:59:44.240+01:00Future City: Update 5 - The Fencepost Problem
Fence-posts
A lot of structures
have a regularity to them that is useful to emulate, whether it be fences,
walls, windows, rows of houses, tree, or chimney pots. As with the fence-post problem you
can't implement them as a straight repeat of a single object though since you
need one more post than fence panels.
The Fence-post Problem: N panels but N+1 posts.
Before we look at solving Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-43528452622297513702016-09-12T11:36:00.000+01:002016-09-12T11:36:20.851+01:00Future City: Update 4 - Down To Business
This week I've been
developing the business district layout a bit, dealing with a few bugs,
experimenting with gradients, optimising the rendering, and adding a few
features and fixes to help diagnose problems.
Oh, and it was my birthday too :)
Business
The business
district is going to be lots of tall, close-packed skyscrapers with occasional
open spaces amongst them. With the Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-27538456837300223792016-09-05T12:08:00.001+01:002016-09-05T12:08:34.301+01:00Future City: Update 3 - Blocks & Detail
Blocking
Out
After digging down
through the zones and district types, we have some large city regions set
out. We now want to break them down into
city blocks so that we can start looking at where buildings will go.
The process is
similar to the zone sub-division and uses most of the same process and
procedures, but this time the design constants are dependent on the district
type. Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com2tag:blogger.com,1999:blog-641146615965187190.post-51460566397939026142016-08-29T21:45:00.000+01:002016-08-29T21:45:58.729+01:00Future City: Update 2 - Get Yourself Connected
This time we look at
creating interesting boundaries and useful connectivity information between all
our city zones.
We want a city with interesting connectivity between zones
Connections
It is as much the
interconnections as the spaces in an environment that make a place
interesting. Now the zones are laid out
we need to look at how they are connected.
As we have a number of Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-80384881075546799932016-08-21T18:00:00.000+01:002016-08-22T11:44:45.129+01:00Future City: Update 1 - Divide And Conquer
Top
Down
A key consequence of
the Apparance detail management system is that each stage of refinement must be
possible independently from any other.
The upshot of this is that the content within a block (in a particular
tier) must only depend on the content of its parent (higher tier) block. It can't depend on the content of any
neighbouring blocks. If this were
allowed, then Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-69660018603144371532016-08-14T21:42:00.002+01:002016-08-14T21:46:38.624+01:00The Demo Plan
Milestones
I've reached the
point where the technology needs a decent sized scene to stretch and test the
features and it is also time to start working towards something stand-alone to
show off the technology to the world.
The development of Apparance is an on-going timeline of features for
which the term 'finished' has no real meaning. I need milestones though, points along the way to Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-80417506970180710882016-07-18T13:07:00.000+01:002016-07-18T13:07:19.653+01:00The Procedure Authoring Process
Being a visual tool
where all content is created within the editor it is of paramount importance
that the authoring process is a smooth one.
The tools and UI are being developed to be a low friction and intuitive
experience, and I am always thinking about ways to improve them. Let's take a look at the procedure authoring process.
Managing
Procedures
The first step is to
add a Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-20216166049133528222016-07-11T11:14:00.000+01:002016-07-11T11:14:18.597+01:00A Look Around The Editor
For this post I'll
show you round the different parts of the editor application's user
interface. Next time I'll dig into the
editing functionality and how to use Apparance to actually build procedures.
An
Editor?
Why do we need an
editor? Well, we are trying something
very different here, by way of workflow, modelling paradigm, and output. As essential parts of the ApparanceSam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-25023573860824531942016-07-03T22:27:00.000+01:002016-07-03T22:27:58.198+01:00The Rendering SystemPreviously
we covered how geometry is created. This
time we will look at how it is managed and rendered.
Models
It was mentioned in
my last post that geometry is built into fixed size buffers. This limits the amount of geometry that can
be created by one a procedure. For a
small object, or one of low detail (farther away), this may not be a problem,
but if we are to build Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com0tag:blogger.com,1999:blog-641146615965187190.post-88652811401325131432016-06-27T21:36:00.000+01:002016-06-28T09:09:03.232+01:00An Introduction to Procedures
As there is a huge
amount to cover I'm going to spread it out over multiple posts. The first few will describe the technology
(engine) and after that I'll cover the tooling (editor). This will by no means cover all the technical detail, but it should give
you a good idea of how it works and what (I hope) it will be able to do.
Authoring
Currently the engine
allows building of Sam Swainhttp://www.blogger.com/profile/05933506292526181555noreply@blogger.com1