Above is an animated GIF of a quick proof of concept for some 4D modelling in Esri CityEngine. 4D refers to the time component used in the construction industry to see the various phases of development (see “What is 4D BIM?”) think Gantt chart in 3D! Whilst CityEngine is not truly a 4D modelling software package it can provide some elements of it after-all time is just an attribute. I like to think of this as a nice way of 3D modelling urban planning and city master planning phasing scenarios over time. With the introduction of Esri CityEngine’s handles feature this can make for a nicer interaction method with your model.
after-all time is just an attribute
In this example I have a days and a maximum number of days attribute (think deadline). The slider controls the day in that timeline between 0 and 365 days for example. Each of the 2D footprints has a field with a start day and an end day, as the slider is moved a test is performed to see whether the day is between those two numbers for each footprint. If the condition is true the footprint is extruded based on a calculation that gradually and proportionally extrudes up to it’s maximum building height. When it reaches and/or exceeds the finish day, the model changes to a more realistic looking building.
All of this is relatively simple in CityEngine (case statements, attributes, and handles), the nice bit is being able to report on progress in the Dashboard. We can use this in a variety of different scenarios in CityEngine, as usual because it’s code we can copy and paste in to other projects!
NOTE: This post has been updated to include response from Pascal Mueller Director of Esri R&D Zurich and the creator of Esri CityEngine, scroll to the end to see his response.
CityEngine 2018.0 beta has been out for a while now and is pretty much over, I’ve been lucky enough to have been using it in anger for a bit too. Building on the CityEngine 2017.1 release there are some small improvements, new CGA code as well as a couple of new features, but essentially this feels like a minor release which is not a bad thing. Just because it’s minor doesn’t mean it doesn’t feel like progress , it will be well worth the update!
Firstly a confession, the title is a bit of a click-bait (hey if respectable news organisations can try it why can’t I?) I can’t show you a sneak peak this time or really talk about specifics, well because of um beta stuff and all that…. (last time I had a special agreement). What I can tell you is that if you want to participate in the future CityEngine betas you can sign-up here https://earlyadopter.esri.com . If you like CityEngine and are interested in where it’s going and of course helping out the team at Esri then I thoroughly recommend you sign up!
I can assure you that some bug fixes have happened and a couple of new features added which complement the analysis side of things.
Planning, designing and development must take the full picture into account. Create, visualize and share in 3D to make better designs and present your work more effectively. Source: Esri
This I guess poses a question for Esri, does it continue CityEngine long term with so many products that seem to tick the urban space box? As someone who has trained many clients in CityEngine and offers consultancy services over the last 5 years I certainly have an interest in its future! There are big questions of whether it will be just consumed by ArcGIS Pro or placed in some cloud container and interacted with via ArcGIS Online.
I think (and I have no insider knowledge here) the answer is all of these things will happen, but also that CityEngine will continue to be a standalone product for the foreseeable future. Esri is in the movie industry now and I don’t think it will want to leave that, but also CityEngine is a great design tool that fits Jack’s interest in urban and geodesign.
“is a simple-to-use 3D city editing and visualization tool” – “Build Flexible Scenarios Faster” – “Create Realistic Context”
The real worry for me is what form will CityEngine evolve into. The marketing literature still talks of easy operation and high quality realistic outputs. Sorry but it’s not easy to learn or use (from a typical planners perspective) and the high quality outputs don’t come instantly (unless you like Redlands building typologies!).
CityEngine’s great power is it’s flexibility of format support and usage. But it has fundamental technical issues/challenges with terrain and roads that need addressing. Esri also needs to decide whether this is a tool for the drag and drop users among us, or some highly technical development environment for urban planning.
One glimmer of light and a direction of travel is the ESRI.lib folder, promisingly for new users it shows a path of drag and drop produce something now. Unfortunately this seems to have gone a little stale, anyone who does CGA coding in CityEngine knows organising and keeping up to date rule files is difficult especially if projects vary like ours do. The ESRI.lib has some great rules I use over and over again, roads and trees, in fact the more generic the better! Give me more of those tree assets! These smaller rules enable a greater freedom and I can write rules that work with these easily because I know they are installed with every CityEngine workspace.
In conclusion, and I’m not good at concluding thoughts so forgive me, CityEngine is here to stay but has some challenges to overcome. Like all software it has to evolve as it’s users ask more of it. Currently I worry that CityEngine as a tool is too technical for widespread adoption this means that businesses will be reluctant to invest in it if only a hand full of users (CityEngine professionals) are out there. On the plus side CityEngine professionals like myself will probably have some consultancy work coming our way!
Update and response from Esri Zurich’s R&D Director
So I posted the link to this blog on LinkedIn and amazingly Pascal Muller (read a post I did called Life Changer to understand why I am honoured to get this) very kindly responded. I have got his permission to post those comments here, these have been copied directly and no editing has been done although I have tried to keep the paragraph breaks. What I now need to do is a follow up post to contemplating this response!
Thanks Elliot, really great read!
I could answer some of the raised questions : ) hmm, maybe we should do an ‘ask me anything session’ here…
(1) You are correct, not a ton of new features in this release. Reason is that we changed our release cycle this year and are releasing now 3 months earlier. As a result the time between CE 2017.1 and CE 2018.0 was much shorter. CE 2018.0 comes out next week and you can expect CE 2018.1 in September instead of November.
(2) Yes, CE is here to stay. There are no plans to discontinue it. In contrary: maybe you have heard about our new product initiative ArcGIS Urban which is basically a streamlined urban planning platform (on top of AGO) for the planning departments of cities. It will feature cool web apps/interfaces and it will also work great with CE. It’s all developed under the same roof here (also includes the 3D JS API 4.x team btw). In the ArcGIS Urban context, CE will (still) be required for the more advanced workflows such as for example Devin’s site plans, Bruno’s Masterplanner, or the various greenfield mega city projects of the HOKs and F+Ps.
ohh, and of course Blade Runner 3 will need these off-world cities Batty was talking about : )
Besides all this, CE continues to be one of Esri’s development platforms where bleeding edge technology gets applied before it goes mainstream, see for example the push on game engines (more about that later…).
Pretty exciting stuff and I am extremely happy that all the pieces fall into place finally, but we know that we have to keep working hard and improve things. Huge thanks for your continuous support and wise long-term thinking.
In CityEngine you can use a feature called ‘handles’ to add visual controls to your models. This means you don’t have to interact with specific numbers or values in the inspector. It also means many more people can use your rules as they were intended. The real issue here is how much control do you give you users via this method?
As you can see there is a balance to be had between being highly configurable and being too configurable (i.e. too many attributes to muck around with!).
Many people have reached out to me asking whether this rule file will be available for sale sometime. The answer is probably! Drop me a message if you’re interested and I’ll let you know how it goes. Or keep an eye on twitter, LinkedIn or this blog for more updates. I suspect I will have to stop sometime.
Some of our latest CityEngine work is looking at the high street and in particular here at home the UK high street. Commercial buildings in a typical UK town are a mixed bag of traditional older buildings with some often badly maintained concrete buildings and the odd brick built modern monster designed and built in the 1980s. More recent buildings like glass a lot … We’ve been creating rules to describe building frontages, not all are pretty but that’s kind of the point!
Further to my CityEngine Quick Render post I thought I’d put through some of our GD3D buildings (sourced from CyberCity3D and processed for use on the ArcGIS platform sold via ArcGIS Marketplace) through the same process. I think they look quite nice! My next task will be to start showing more than pretty renders of buildings, I hope to add some metrics in and the do more nice imagery.
All this rendering of 3D models whilst not new to me is something I do very rarely, other people can do better but as with everything it is nice having some skills ‘in-house’!
I’ve been playing with my new ‘Craftsman’ style CityEngine rules in other workflows and pipelines. The one I’m working through at the moment is some experimental renders, I know there are a lot of issues here but I’m not yet interested in spending hours working and tweaking my rendering program to get ‘just’ the right level of detail and dirt (there are better professionals than I for that). It’s still amazing to me that these are proper GIS based models (they mostly designed to work with GIS data in ArcGISPro) with real dymanic metrics being now used to produce something that looks quite good (well I think it does).
I like how these renders make my craftsman style models look like something you may print out via a 3D printer. Okay it I know it looks toy-like, and is somewhat dated in terms of visual renders etc.. (I’m not a entertainment industry/graphic artist professional) but I still like it. Also apologies for over use of Depth of Field effect….
So it looks like CityEngine 2017.1 is soon to be released (it gets released for Partners a little earlier!) and wow have the team in Zurich and Redlands been hard at work! Of course there are two headline features
The amazing viewshed/view corridor analysis you can do against your models here (oh and the can be controlled by python too!). Unfortunately for now it looks like you can’t export the analysis, but it is a great tool for understanding building heights and volumes within CityEngine itself. I did a small sneak post a couple of weeks back which is here.
High-end architectural visualisations with Unreal Engine, basically we have a new exporter function for Unreal Engine based on the Datasmith SDK. This seems to replace the FBX workflow and allows a more efficient way of getting your cities into Unreal. It looks like its capable of tens of millions of polygons!
It looks like the Esri team are making good on their promise of making CityEngine into a true geodesign tool of great value to Urban Planners. There are a lot of enhancements and bug fixes
Among the new CGA functions I think the interesting on of mention is the new annotation attribute @Enum and a change in how @Range works we can also restrict the values (so you can’t as a user override these values in the inspector!). This allows for a more defined set of inputs and makes the inspector much easier to read and interact with. @Angle, @Distance and @Percent do what they say and I think go some way in making people who author rule files (like myself) make easier to use tools!
One improvement I’ve noticed is that that the Scene Layer Package export function has been improved to make it what Esri call ‘Smart Mapping-ready’ basically it means attribute information is written to the scene layer package which makes it nice and easy to change colour by values in the online scene viewer.
A big thank you to the Esri engineer who fixed the bug in the FGDB export that meant previously imported feature classes retained memory of their old names when exporting!
Finally a reminder this release CEJ files (CityEngine Scenes) are not backward compatible with 2017.0! Take my advice, use a new workspace directory per CityEngine release and copy old project to the new workspace so you don’t run the risk of damaging your work!!
Some of you may have noticed a post I shared on LinkedIn by a gentleman called Ryan Johnston from the Transport Systems Catapult (based in Milton Keynes) coming to our office here in Cumbria last Friday.
Getting the train this morning to Cumbria for some collaborative work with Elliot Hartley#Garsdaledesign . Looking at how City Engine can help create fast environments for testing and stimulation.
Ryan was here to gain insight into how we here at Garsdale Design build virtual 3D environments from GIS data. We use the Esri platform to do this and one of the key tools Ryan was here to get an understanding of was CityEngine and ArcGISPro. As you all should know by now is that at Garsdale Design is well known for our CityEngine and 3D GIS expertise!
This is part of the Peterborough way finding research project for the partially sighted. Helping to understand how spatially correct 3d urban models and VR technology; can help the partially sighted to navigate from the train station to the RNIB Peterborough head office.
Ryan’s visit was in relation to a way-finding project for the partially sighted in Peterborough, home to the head office of the Royal National Institute for the Blind (RNIB). Here the TSC has brought together a range of industry professionals (such as Garsdale Design and MK Surveys) to create a virtual environment to test various sensors, beacons and navigation methods around Peterborough town centre and the offices of the RNIB. As this project progresses more information will be posted on the Transport Systems Catapult website.
Ryan was here the whole day (interrupted only by a nice lunch at the Three Hares Cafe), and we discussed various project workflows, for example making all that nice Ordnance Survey MasterMap data 3D, as well as managing terrain data. We looked at game engine workflows and the exciting possibilities of Unity as well as the new datasmith tool for Unreal. Of course once we have a dynamic and flexible (i.e. easy to modify) 3D model we also need to look at analytical tools to help in the process of assessing various ‘way marking’ technologies. Whilst the discussion was focused on the Peterborough project we’re happy to report that many of the issues we were addressing also would come in use for future projects too.
At the end of the day Ryan and I were able to make a quick mock-up of part of Peterborough to identify where CityEngine tools may help create this virtual environment. We also looked at the 2017.1 beta version with viewsheds which could be useful in this particular project.
We had a great day and it was fantastic to work with Ryan, I’m pretty sure we could have kept going for a lot longer, but sadly a work day must come to an end sometime!