Rendering simple Minecraft scenes is fairly straightforward, and you'll find a
number of tutorials covering how to get started with it - there are free options for all the software required to just get a render out (such as Blender, as mentioned above). If you're looking to get renders of small areas from the vanilla Minecraft client, I would take a look at jmc2obj and any of the resources and documentation that come with it; it is the standard tool for exporting Minecraft worlds into a format that you can use for rendering. If you aren't too familiar with rendering, I'd definitely start with smaller scenes before approaching larger ones, just to get comfortable with lighting, scene setup, and how the basics work.
Rendering large-scale scenes with far more textures and custom blocks than vanilla Minecraft is where it gets a lot more involved; just importing the scene into the modeling software can stress your computer and take upwards of half an hour, depending on your specs. Because WesterosCraft makes extensive use of custom blocks,
@mikeprimm wrote us a custom exporter which can be run as server commands that upload chunks of our map to be downloaded from a browser. Importing one massive chunk of land that you intend to render is a bad idea for multiple reasons - it
greatly reduces the performance of your modeling software when trying to visualize your scene (which makes it take very long to set up things like cameras, lighting, etc.) and also tends to increase RAM usage when rendering, which is no bueno. Instead, I usually calculate the coordinates to split the scene into 4+ even chunks that I can import one at a time. This does increase the setup time a little bit since I have to line everything up in the modeling software, but it makes the scene much more manageable on the other end because I can show and hide the separate chunks as necessary to maintain my framerate while setting things up. Just to get a sense of how my lighting is going to look, I usually do a couple of "preview" renders at low resolution and low render quality, as rendering the larger scenes at 4K resolution can end up locking up your computer for several hours.
To sum up my general process:
- Figure out the coordinate range I want to export using Dynmap
- Calculate how to split up those coordinates into smaller, equally-sized ranges
- Export those ranges from the server using the appropriate commands
- Download the files from a special URL that the server uploads to
- Use an OBJ importer to begin importing the chunks into my modeling software (Cinema4D)
- Line the chunks up and check for any mismatches or seams
- Delete all water materials from the scene
- Add my own custom water planes (which is how I get the reflective, high-quality water)
- Add multiple cameras for each of the angles I want, test different lens sizes and focal lengths
- Add directional lighting to the scene and do preview renders to see how it looks
- Tweak render settings for final render and begin rendering (I use VRay)
- Pull the result into Photoshop and do any necessary post-processing (color correction, backdrops, etc.)
Even after doing all of this, it can sometimes be the case that your computer is simply not powerful enough to handle the render - this has already happened to me once, with the King's Landing scene that you linked in the OP; even with 16 GB of RAM, my computer maxed itself out and would crash during the render prep phase. I finally gave up and we ended up
buying a little bit of render farm time in order to actually render that scene (which is actually cheaper than you might think, I believe I only spent around $3 USD on the final shot).
Speaking of which, I'd really like to get back to rendering some more areas soon - life's been hammering me the past year and I haven't been able to think about it much, but I feel a little bad since I know it's a key area of server promotion. Anyhow, let me know if you have any other specific questions about the workflow or if you want some exports to mess around with.