Sometimes in CityEngine it can be hard to figure out what’s going on. Whether that’s understanding scope (CityEnginers understand this can get complicated) or just simple metrics.
I’ll often use a combination of ‘print’ and ‘report’ to give me a better understanding of my code at any given point. What I also do is use bright colours (which have simple RGB/hex colour codes) to indicate whether a part of the code has been reached. once I’ve confirmed it works I continue the code.
Recently I’ve been working on some code where an understanding of the orientation of an model is important, not just as a world orientation but also relative to the initial shapes scope. As is the case with most of my work in CityEngine I start to wonder, how would I go about making something more visual for me? Thus I decided to spend some (okay probably too much!) time creating a procedural protractor. This allows you to switch between displaying an angle relative to the shapes scope, or the world.
I’ve used the Handle features in CityEngine to make interacting with the attributes associated with this rule simple. I’m starting to use ‘handles’ in CityEngine to expose attributes for users in a friendlier way.
To sum up for me I’ve found that programming language in Esri CityEngine called Computer Generated Architecture (CGA) is easier to pick up than traditionally programming languages because it is a visual one and by that I mean you create geometries.
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.
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!
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!
Well I’ve been a bit busy as of late working on some exciting 3D projects and attending some really interesting conferences! One day I’ll get around to writing about them. 🙂 There is so much going on in the 3D GIS space that it can feel a bit too much. Fortunately that’s where our expertise lies, making sense of it all and helping clients.
I’ve made some time though to talk a little bit about the new CityEngine 2017.1 Beta that I’ve just installed. But before I continue this is a sneak peek at a beta release some or all features I talk about maybe removed at the last minute, don’t plan your future projects based on this blog. What I would say is yet again, if you are thinking of working in 3D and the Esri platform, CityEngine is worth a look, especially for planners.
The team in Zurich seem to be hell bent on adding new features quickly now especially for the Urban Planners among us! I wanted to show you a very cool new feature/toolset called viewsheds. This gives you live (see animated GIFS below) views of viewshed domes or corridors in the CityEngine viewport, giving you an indication of what you would see from particular vantage points. You can change the colour for each area too (colour visible by all, colour visible by one, colour not visible by any) and place multiple viewsheds.
There are some usual bug fixes and a few new rule functions I can see coming up (I may write about these later), and there is a facility to import and synchronise feature layers hosted in ArcGIS Online! This brings some potentially exciting opportunities and workflows but as a new feature I think as usual this should be used with caution, but the direction of travel here is interesting.
While you’re here it would be good to know what you think of CityEngine and/or it’s direction into Geodesign and planning. Add a comment to continue/start the discussion (all comments reviewed/moderated).