Archive for the ‘3d’ Category

Happy Christmas!

Friday, December 23rd, 2011

imporks Christmas Card 2011

 

Don’t Make the Little Guy Angry…

Tuesday, July 19th, 2011

…You’ll not like him when he’s angry.

Angry Imp

My avatar was mistaken for a goblin’s mugshot and he really isn’t happy about it.  First he’s never been in trouble with the law.  So they don’t have his DNA, clawprints or photograph on file.  Secondly he’s not a goblin:  Goblins don’t have tails or wings – at least not the goblins he’s come across.

 

Sunrise City / Finally 64 Bits

Tuesday, July 5th, 2011

 

Sunrise City - Cityscape shrouded in low cloud at sunrise - modelled with CityEngine rendered with Vue 9.5 Infinite

 

A quick post for a quick render – Sunrise City – my first proper test render with my new 64 Bit PC built entirely with it.  My last PC was supposed to be 64 Bit but there was a complication in the manufacturing (otherwise known as Dell used some 32 Bit parts thus rendering the whole box trapped in a 32 Bit body with 64 Bit RAM and Processor).   Anyway I’m now enjoying the 64 Bit life style.  This quick image was made by taking a quickly built Wizard City from CityEngine and dropping it into Vue 9.5 Infinite.  A few tweaks to one of the out of the box atmospheres to make it redder, to add a low cloud layer and to darken the buildings’ materials so they became stronger silhouettes and nine minutes later a larger version of the cityscape above was done.  Resources never dropped below 85% even with both Vue and CityEngine running at the same time.

Super Injunction and Libel Woman

Friday, April 29th, 2011

A Vue 9.5 Infinite, CityEngine and SkinVue 9 Experiment

Super Injunction and Libel Woman - a Vue 9.5 Infinite Render with a CityEngine background

Click the Image to see Full Sized Version

Every time I hear someone talking about the latest Super Injunction I can’t help but think it sounds like one of the lesser known super hero comics.  Someone who comic fans love but the rest of us will only discover when they get a movie.

No one really knows who Super Injunction is except that he’s wealthy and has the power of (legal) invisibility.  Even in a picture like this one where he’s posing he ends up blurry and indistinct.  One of his biggest advantages is that his work clothes are also his costume.  No needing to find a phone box or worrying if the belly he’s started to get from too many good lunches at Michelin Stared restaurants will look embarrassing in the spandex.  Here he is pictured with Libel Woman another super hero who can be a bit grey and misused.

There is a slightly serious, practical side to this render.  I wanted to try out Vue 9.5 Infinite’s new  fast hybrid depth of field  2.5D algorithm in anger. I’ve not managed to get good results with the old depth of field methods but this new one seems to work really well and is fast enough for me on my 32 bit system.

The picture features Daz’s Victoria 4 and Michael 4 with textures enhanced using SkinVue 9, BC RoofTopper for the close up scenery and a CityEngine Wizard city modeled background.

Cloud Picture Made with Vue 9.5 Infinite

Friday, April 22nd, 2011

One of the most popular pages here is Cloud Layer Sculpting in Vue and with all the new Vue 9.5 cloud features I thought I would be a good idea to blow the dust of it and rework it to use the new features.

Train Shaped Cloud Rendered in Vue 9.5 Infinite

Here is the original for comparison…

Train Shaped Cloud Rendered in Vue 6

Update: I’ve been busy and I’ve posted a tutorial on how to do this and made a video tutorial to go with it too: Cloud Picture Made with Vue 9.5 Infinite.

Blue Yonder – A Vue 9.5 Landscape

Thursday, April 14th, 2011

Blue Yonder - a landscape rendered in Vue 9.5 Infinite of rolling valleys leading to distant hills shrouded in a layer of white cloud

So this is my first proper Vue 9.5 render post. A single cloud layer over an infinite procedural terrain with two texture layers controlled by altitude and slope angle. I sometimes feel I’m cheating a bit when I post one of these because Vue does so much of the work while letting me get on with the big picture.  Not really using any Vue 9.5 feature like the new cloud manipulation yet but still nice to see a new version can do the basics.

Accretion

Friday, March 18th, 2011

A photograph of architectural accretion in action

When I took this picture of buildings all jostling for space with each other on a Liverpool street I was going to just post it as a throw away picture post. However this was one of the views, with its variety of buildings from different eras, that inspired my render Accretion City. So I thought I might expand a little on the idea that pictures (especially 3D renders) need to be careful of avoiding mono culture scenery. I really like CityEngine (I think my reviews of CityEngine Indie and CityEngine Vue made that pretty obvious).

A lot of 3D scenes reveal their artificial nature because they use the same elements over and over again. I can’t remember which film it was but I do remember one of the 3D cartoons with insects films a few years ago where all the background insects looked the same. Every time I saw a group of ants in the background I knew I was watching a CG movie and it pulled me out of the story.  Vue users have become so used to EcoSystems they almost forget the power the variety gives in making scenes more believable through variation.

The sample scenes are great but they tend to create models of settlements that are very mono culture in nature. Even when they feature different types of area they tend to be of one era. CityEngines way of creating models of a city is great but they aren’t settlements that grow over time – and trying to making them do that is a task that would scare me and probably wouldn’t have huge benefits. So the trick will be to include a variety of building types to make it seem a model has grown over time. That will include creating models that fuse multiple styles so the old can be extended sometimes in a way that would have Prince Charles talking about carbuncles if these were real buildings.

Anyway somewhere along the lines before I’d finished writing what should have been a complete post I was struck by how I don’t just think this way for 3D stuff but also when I’m world building for stories or games. In fact I went as far as writing up a formalised way of doing that when I put together STEEPVM. Thats quite a formal method and I know that most of the time the ideas for a setting layer themselves by accretion until, hopefully, I have something believable.

Thankfully I don’t have to create some sort of procedural set of instructions for this to work. However I do have to be careful of the trap that lies in wait – a curate’s egg setting.

It is far too easy to be lured by lots of shinny, shinny ideas and to throw them all into a setting and be left with a mess. I hate to pick on one particular target but the RPG Waste World seemed to me to suffer baddly from this.  On the flip side I was really pleased when Nightfall Games posted on their new(ish) forums that they won’t be updating SLA’s technology because at the moment, for me, its achieved a level of accretion without tipping over into being a mess.

I was starting to write something about that when I remembered I’d written Leave out the (Steampunk) Kitchen Sink last year so I’ll not go back over that old ground again…

Accretion City

Saturday, January 22nd, 2011

Accrestion City, Built using CityEngine and Vue 9

I’ve tried to create a picture like this for some time – a cityscape with layers of different types of building like real cities have. I started this attempt earlier today and I think its my best attempt to date. Its built up of several CityEngine created models and a few from Cornucopia 3D. The foreground is the new Favela Houses at Cornucopia 3D along with some basic Vue plants. The mid ground is buildings created using the CityEngine Paris 2010 project. Behind that is a narrow row of CityEngine’s science fiction WizardCity and the tallest towers are from the modern city project.

I’d like to have included some cars and people in the foreground and possibly a plane in the sky but my 32 bit system couldn’t really cope with anymore models in the scene once I assembled it in Vue 9.

CityEngine Colour Combinations and String Multiplication

Sunday, January 16th, 2011

CityEngine Colour Combinations

Working on my CityEngine Constructivism WiP model today I wanted to simplify the way I’m colouring the models. Rather than just assigning random colours or fixed colours I’ve created some sets of colours for my buildings. I’ve got the set of colour combinations stored as a string that I’m picking one at random for each lot using listRandom

  1. const colourcombinations2= "#ffffff#ff0000;"+
  2. "#ffffff#333399;"+
  3. "#ffffff#cccccc;"+
  4. "#cccccc#ffffff;"+
  5. "#cccccc#ffff00;"+
  6. "#ffff00#ff0000;"+
  7. "#ff0000#ffffff;"+
  8. "#333399#ff0000;"+
  9. "#000000#ff0000;"+
  10. "#000000#ffffff;"
  11.  
  12. attr buildingcolour2=listRandom(colourcombinations2)

To pull a colour from the randomly selected combination I’ve created a simple function…

  1. ColourCode(Colours,CN)=substring(Colours,((CN-1)*8-CN+1),((CN*8)-CN))

The first value given to ColourCode is the random colour string in buildingcolour2 and CN is the number of the colour I want. I’m using colour 1 for the top of each building and colour 2 for the sides so I can set them like this…

  1. Lot --> extrude (10) Building
  2. Building --> comp(f) { side: Side | top: Top }
  3. Top --> color (ColourCode(buildingcolour2,1))
  4. Side --> color (ColourCode(buildingcolour2,2))

If you want more than two colours in a combination simply add them into the string (eg  "#ffffff#ff0000#000000#0000ff;" would be four colours) and call them with ColourCode and the appropriate postion ( ColourCode(buildingcolour2,4) would get the fourth colour).  While my colour combinations are deliberately quite bold and unrealistic more subtle and realistic combinations can be created in just the same way.

Now I wanted to have some colour combinations turn up more often than others. I could just cut and paste them so they are in the string more often but thats slow, boring and likely to introduce errors. Now CityEngine’s string handling features are quite basic compared to say php or python. To be fair its not really what CityEngine is built to deal with. I wanted a string multiplying function but there isn’t one. So I built one myself…

  1. StrMultiply (ShortStr,Number)=StrLoopConcat(ShortStr,"",floor(Number))
  2.  
  3. StrLoopConcat (ShortStr,Str,Number)= case Number > 1 : StrLoopConcat (ShortStr,Str+ShortStr,Number-1)
  4.  else: Str

So now my set up of the colour strings looks like this…

  1. const colourcombinations2=StrMultiply("#ffffff#ff0000;",10)+
  2. StrMultiply ("#ffffff#333399;",10)+
  3. StrMultiply ("#ffffff#cccccc;",10)+
  4. StrMultiply ("#cccccc#ffffff;",1)+
  5. StrMultiply ("#cccccc#ffff00;",2)+
  6. StrMultiply ("#ffff00#ff0000;",2)+
  7. StrMultiply ("#ff0000#ffffff;",4)+
  8. StrMultiply ("#333399#ff0000;",2)+
  9. StrMultiply ("#000000#ff0000;",2)+
  10. StrMultiply ("#000000#ffffff;",2)

A simple rules file can show both random selection of colour combinations and simple string multiplication off…

  1. /**
  2. * File: rules.cga
  3. * Created: 16 Jan 2011 19:40:44 GMT
  4. * Author: mark
  5. */
  6.  
  7. version "2010.3"
  8.  
  9. Street --> color ("#000000")
  10. Sidewalk --> color ("#000000")
  11. Crossing --> color ("#000000")
  12. Junction --> color ("#000000")
  13. JunctionEntry --> color ("#000000")
  14. LotInner --> Lot
  15.  
  16. Lot --> extrude (rand (5,30)) Building
  17. Building --> comp(f) { side: Side | top: Top }
  18. Top --> color (ColourCode(buildingcolour2,1))
  19. Side --> color (ColourCode(buildingcolour2,2))
  20.  
  21. attr buildingcolour2=listRandom(colourcombinations2)
  22.  
  23. ColourCode(Colours,CN)=substring(Colours,((CN-1)*8-CN+1),((CN*8)-CN))
  24.  
  25. StrMultiply (ShortStr,Number)=StrLoopConcat(ShortStr,"",floor(Number))
  26. StrLoopConcat (ShortStr,Str,Number)= case Number > 1 : StrLoopConcat (ShortStr,Str+ShortStr,Number-1)
  27. else: Str
  28.  
  29. const colourcombinations2=StrMultiply("#ffffff#ff0000;",10)+
  30. StrMultiply ("#ffffff#333399;",10)+
  31. StrMultiply ("#ffffff#cccccc;",10)+
  32. StrMultiply ("#cccccc#ffffff;",1)+
  33. StrMultiply ("#cccccc#ffff00;",2)+
  34. StrMultiply ("#ffff00#ff0000;",2)+
  35. StrMultiply ("#ff0000#ffffff;",4)+
  36. StrMultiply ("#333399#ff0000;",2)+
  37. StrMultiply ("#000000#ff0000;",2)+
  38. StrMultiply ("#000000#ffffff;",2)

Download a sample project including the rules file: CityEngine Colour Combinations (676KB Zip Archive)

Vue Free Objects Page

Tuesday, January 11th, 2011

Google may want to organise the Web – I just want to organise my website.  So since I had a couple of freebies for Vue floating around on Too Many Ideas without a proper home and I think I may have some more on the way I’ve made a new home for Free Vue Objects downloads.

« Older Entries