tag:blogger.com,1999:blog-3779956188045272690.post191078286103570218..comments2024-03-22T01:46:59.425-04:00Comments on Procedural World: Producing complex shapesMiguel Ceperohttp://www.blogger.com/profile/17586513342346629237noreply@blogger.comBlogger19125tag:blogger.com,1999:blog-3779956188045272690.post-14226431386785946392012-08-19T19:34:12.854-04:002012-08-19T19:34:12.854-04:00Well, I would say, just discard all the inaccessib...Well, I would say, just discard all the inaccessible designs and the ones with inescapable pits etc. but keep the rest. If people hate a building, regardless of how absurd it is, they will reject it XD. You might get really alien architecture, but people might like it, even if you would discard them yourself.Kamicahttps://www.blogger.com/profile/09074839497845172950noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-6575985844212443312012-08-15T20:30:46.879-04:002012-08-15T20:30:46.879-04:00In theory it is possible. As you noted, the challe...In theory it is possible. As you noted, the challenge I see is how to discard the many absurd mutations this will produce even before the building is presented to people.Miguel Ceperohttps://www.blogger.com/profile/17586513342346629237noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-79997427822304531892012-08-15T17:18:42.197-04:002012-08-15T17:18:42.197-04:00If you are using building "DNA" it might...If you are using building "DNA" it might be interesting to rig up a genetic algorithm to "breed buildings". Have a list of possible mutations to your building code, run it, and see what happens. This may not be as easy as it seems.<br /><br />It would be interesting to have a sort of open-world where buildings "fitness" was scored based on how long people spent near them, as a proxy for how interesting they are. But in practice that would probably just result in the evolution of buildings with hidden, inescapable pits.Adam Fullerhttps://www.blogger.com/profile/10333870136697899160noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-85005574545333989542012-08-14T11:30:13.724-04:002012-08-14T11:30:13.724-04:00This is needed complexity. I have already covered ...This is needed complexity. I have already covered some of it:<br /><br />Ruins<br /><br />http://procworld.blogspot.ca/search/label/Ruins<br /><br />City layout and building placement:<br /><br />http://procworld.blogspot.ca/search/label/CityMiguel Ceperohttps://www.blogger.com/profile/17586513342346629237noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-56816273822462280882012-08-14T11:20:24.793-04:002012-08-14T11:20:24.793-04:00so, is the general idea behind the architectural w...so, is the general idea behind the architectural work to have random buildings/ruins littering the landscape, or are you thinking of more formal town layouts? is it possible to have buildings placed in 'logical' places if they are procedurally generated? for example; watchtowers on mountain tops, housing on flat plains, roads curving/cutting into the sides of hills, etc? also, the buildings shown all seem very clean cut & shiny, do you have any intentions to make more 'ruined' forms of them? missing sections of ceiling, broken columns and such? or is this prematurely introducing unneeded complexity into the mix? mr-troutnoreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-7072400869581224882012-08-13T11:53:22.944-04:002012-08-13T11:53:22.944-04:00Did we tell you about the giant alligators?Did we tell you about the giant alligators?Miguel Ceperohttps://www.blogger.com/profile/17586513342346629237noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-17489641803586845042012-08-13T11:01:41.463-04:002012-08-13T11:01:41.463-04:00Did you just make even sewers sound interesting? :...Did you just make even sewers sound interesting? :)Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-39133567741106176192012-08-11T18:48:13.453-04:002012-08-11T18:48:13.453-04:00Yes, that would work.
You could also use a space ...Yes, that would work.<br /><br />You could also use a space colonization algorithm with some strict angle constraints. If you seed point below houses a network would naturally form.Miguel Ceperohttps://www.blogger.com/profile/17586513342346629237noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-73180138549982977582012-08-11T15:56:29.878-04:002012-08-11T15:56:29.878-04:00OK, so I'm just thinking out loud here, but I ...OK, so I'm just thinking out loud here, but I guess a sewer system could be generated by finding a destination point (a pond or something outside of the city, or maybe a nearby river) and then running the main "veins" under the roads. Try and find a good angle that never quite intersects with the surface, periodically connect the veins to the surface by means of gutters and manholes, and you're in business.<br /><br />What do you think? How would you approach it?tentushttps://www.blogger.com/profile/06628834564577384407noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-55035198797056037632012-08-11T14:09:55.711-04:002012-08-11T14:09:55.711-04:00I have not tried that, but looks doable.I have not tried that, but looks doable.Miguel Ceperohttps://www.blogger.com/profile/17586513342346629237noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-5211747433686192642012-08-11T14:03:25.624-04:002012-08-11T14:03:25.624-04:00So could you use a similar technique to create, sa...So could you use a similar technique to create, say, a sewer system? Dig out a blocky grid that gets rounded out and connected to the surface (manholes) by means of these recursive elements?tentushttps://www.blogger.com/profile/06628834564577384407noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-75487052566420090942012-08-11T12:42:31.673-04:002012-08-11T12:42:31.673-04:00Both NURBS and polygons are poor choices for defin...Both NURBS and polygons are poor choices for defining architecture. The main reason is they are surfaces, not volumes. When writing rules for an architecture L-System you really want to operate on volumes.<br /><br />See the answer I gave above to Rune Skovbo Johansen. I applies to your question as well.Miguel Ceperohttps://www.blogger.com/profile/17586513342346629237noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-57867049615824936472012-08-11T05:30:41.104-04:002012-08-11T05:30:41.104-04:00Good blog Miguel, but I'm wondering, for these...Good blog Miguel, but I'm wondering, for these sorts of problems (boolean results) would NURBS surfaces be more suitable? You could easily convert from polygons to NURBS (Autodesk Maya manages it) if you want to keep the current methods, but this discretisation and recursive subdivision wouldn't be a problem.PSanhttp://www.example.comnoreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-20475206484273326222012-08-11T02:59:37.307-04:002012-08-11T02:59:37.307-04:00That's really nice solution :)That's really nice solution :)Aroidzaphttps://www.blogger.com/profile/06891654803738975116noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-20460479290402157652012-08-10T21:07:19.551-04:002012-08-10T21:07:19.551-04:00100
At some point you start seeing diminishing re...100<br /><br />At some point you start seeing diminishing returns. The generation becomes too difficult and the results are not aesthetically pleasing.Miguel Ceperohttps://www.blogger.com/profile/17586513342346629237noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-66592711351301579712012-08-10T21:01:38.947-04:002012-08-10T21:01:38.947-04:00The reasons are practical. Rendering is the easy p...The reasons are practical. Rendering is the easy part so it has little weight on the solution. The real problem is how you encode what we could call the DNA of buildings. Defining buildings as pure functions is very difficult, to the point I don't think it has ever been done for a realistic building. Think of a house, you have doors, hallways, kitchens, chimneys, staircases, bathroom tiles. It is a problem that is best solved by a system that acknowledges and produces structure, like L-Systems.<br /><br />When you write L-System rules for a family of buildings you want to target manageable scopes like boxes and prisms. The rules determine how the scopes are placed, sized and most important, subdivided into other scopes. This is what gives the system the ability to grow, pretty much like an organism grows out of its DNA.<br /><br />Keeping the same basic DNA blocks at all scales makes the system more powerful. For instance it would be possible to turn some of these small blocks into larger features like gargoyles.<br /><br />Also you must know these boxes are not visible in the final output. Not only the small ones, the large ones are gone too. They are guidelines where custom geometry like bricks and roof tiles will be instanced. This geometry is hand made. You certainly don't want to create gargoyles out of mathematical functions.Miguel Ceperohttps://www.blogger.com/profile/17586513342346629237noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-59387870532235712492012-08-10T20:06:46.984-04:002012-08-10T20:06:46.984-04:00Wait, when the end output is voxels anyway, why bo...Wait, when the end output is voxels anyway, why bother with composite cones and spheres that are made of many smaller boxes instead of just using pure mathematical definitions of cones and spheres, like ray-tracers do?<br /><br />In ray-tracers, CSG shapes are rendered directly with arbitrary resolution without ever converting to polygons or dividing curved surfaces into small triangles or cubes. The same principle can be used to get voxel output directly from CSG shapes without ever needing any subdivision.<br /><br />Or is there are reason why your curved surfaces must be made up of many small boxes rather than just being defined mathematically?Rune Skovbo Johansenhttps://www.blogger.com/profile/10793811736803423054noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-49807073935360776322012-08-10T18:34:04.452-04:002012-08-10T18:34:04.452-04:00Now that we are back to architecture. On a scale f...Now that we are back to architecture. On a scale from 1 to 10, how difficult is it to procedurally generate the objects which you use pre-made models for? (Such as windows)Kamicahttps://www.blogger.com/profile/09074839497845172950noreply@blogger.comtag:blogger.com,1999:blog-3779956188045272690.post-64025088578072845702012-08-10T17:44:15.739-04:002012-08-10T17:44:15.739-04:00Wow, That was a very unexpected way to proceed and...Wow, That was a very unexpected way to proceed and a very good use for voxels !<br />I can't wait to see what weird shapes and buildings you will come up with. : )Anonymousnoreply@blogger.com