This is a quick post to let everyone know that there has been some delays getting the next release but that the project is still being developed.
The plan is to get a release out by Monday/Tuesday (depending on timezone and what time of day it can be uploaded) and get development back on track. Thank you for supporting the project!
Recent Update
There was an update to Arcane Mapper today - however to avoid confusion, I would like to clarify what is in the build. This version does not include the major changes that have been in progress since the last build, which is still on track as discussed in the last post.
Unfortunately some art assets were included in the previous version that should not have been. This build was released to rectify that issue, though there are a few minor fixes in as well. This will only affect people who purchased Arcane Mapper in the last few weeks, since the previous release. So if you are wondering why certain assets are included when they obviously shouldn't be - the issue has been resolved and won't happen again.
Note that Steam will not overwrite your Library directory, so current owners won't see any change to their Library. However new purchasers will not receive the extra assets that should not be included.
The next feature release build with the previously discussed lighting and performance improvements is still in progress and on track.
I hope this clears up any confusion.
Build Delays
Hello, it has been some time since an update has been posted. However I am hard at work on the next build - unfortunately some of the improvements required more sweeping changes that originally anticipated.
That said the extra time is worth it - the foundations will be much more solid for future work. Generating lighting is now faster and better looking - sharper shadows with better falloff, sharper Ambient occlusion, faster updates, more options to tweak performance and support for much larger maps - among many other improvements.
I was hoping to be able to post about a new build tonight, but that is not happening. However the build should be complete next week and future builds should happen at a much faster rate.
Thank you for your patience. :)
"Tiled Lighting" Build Split
The Tiled Lighting build is taking longer to put together than originally anticipated. In order to avoid a long delay between updates, the build is being split into two parts.
Tiled Lighting Part 1
The first part includes the overall improvements and increased performance. The shadow quality has been increased, the shadows being much sharper than before and having more accurate Penumbra - the effect of becoming "wider" and softer as the distance between the contact point and surface increases. Ambient occlusion is also sharper and corners are handled much better - this means that organically shaped rooms will no longer have the "crinkle" effect. So overall - improved visuals and improved performance.
In addition the build will support larger maps, much higher resolutions when rendering out images (great for printing), super sampling while saving out images and many options to help manage performance on slower systems without having to disable lighting or shadows. It will also include some fixes and UI improvements.
If all goes well, this build will be out sometime this week.
Tiled Lighting Part 2
The second part will be released a bit later and will include lower system requirements (OpenGL 2.1) and optional CPU based lighting and shadowing to support lower end or integrated GPUs. This build should allow Arcane Mapper to run on a much greater range of hardware and be less reliant on outdated GPU drivers for older systems.
What's Next
Depending on how well the "Part 1" build works out for people, "Part 2" may be finished right away or a feature build may be inserted in-between. What do you guys think?
Early Access Update 2
In the previous update the "Tiled lighting" build was discussed, including a list of features and improvements that it will bring. Work continues on the build but I wanted to highlight one feature that hasn't been discussed previously.
The Problem
One area where Arcane Mapper has struggled is with dealing with older computers and integrated graphics parts. The editor, as currently released, demands a lot from your GPU - which is great for people with relatively modern discrete GPUs since a lot is gained by this, such as the realtime lights and shadows that really improve the visual quality of the maps. However weaker GPUs, which claim to support OpenGL 3.0 or higher, struggle with either the rendering (no shadows on an Intel Integrated chip) or performance or simply don't work at all (older GPUs with less than 1GB memory).
Hardware and Software Lighting
The "Tiled Lighting" build will introduce the concept of "Hardware Accelerated Lighting" and "Software Lighting." By default modern NVidia and AMD GPUs should default to Hardware Accelerated Lighting and everything else to Software. This has several effects:
Reduces the system requirements from OpenGL 3.0 to OpenGL 2.1 - though 3.0 will still be used when possible.
Full lighting and shadows on Integrated Parts using the software path.
Less GPU memory required for the Software Mode, allowing GPUs with less memory to run well.
When using software, lighting may "lag" behind - the goal is to maintain high performance in the editor and let the lighting update as fast as the system performance allows.
So how does this work?
Arcane Mapper caches the lighting results into "lightmaps" so the editor stays responsive when moving around, interacting with the UI, etc. no matter how many lights are in the map. The "Tiled Lighting" build extends this concept to keeping separate tiles which are 5x5 units in size. It then tracks which tiles need to be updated and keeps a shadow cache, which stores 32 shadows, to avoid updating more shadows then necessary when rendering the "dirty" tiles. By properly culling lights, limiting the number of tiles that can be updated in a frame and using the shadow cache - performance is greatly improved over the build that is currently available.
When using the Software Lighting path, the GPU still rasterizes the geometry and objects and the necessary data is then passed to the CPU for asynchronous light rendering. The CPU renderer runs on seperate threads - the number of threads depends on how many CPU cores your system has available. Each 5x5 unit tile (350x350 pixels at the default lighting resolution) is then split into smaller pieces that can fit in the CPU cache - into small 50x50 pixel "stiles". Each "stile" is submitted as a task to the thread pool - at which point each stile is further subdivided into 2x2 "quads" - where all 4 pixels are rendered at the same time using SSE 2. These quads are in the form of 2x2 squares, "swizzled" to improve locality. Once all the quads finish, the stile can be converted to the final pixel format (HDR encoding in 32 bits) and stored in the final lighting buffers. At regular intervals the buffers used on the GPU are updated so you can see the lighting on the screen.
Final Words
If you have gotten this far, thanks for reading. :)
To put it simply, Arcane Mapper will soon work on more systems and be less reliant on outdated GPU drivers. Rather then compromising the quality of the lighting or current or future features - instead Arcane Mapper will be able to take advantage of your CPU to asynchronously render high quality lighting without slowing you down.
Of course if you have a modern discrete GPU then that will continue to provide the best experience. But even in that case Arcane Mapper will perform better and be more responsive under higher loads.
There are more lighting improvements coming and possibly other surprises, but that will have to wait for another post.
Early Access Update 1
It has been just over a week since the last update of Arcane Mapper, a big update has been in development. The first build listed in Upcoming Builds was released on May 7 and the "Tiled lighting" build has been in progress since then.
So what can you expect from the build?
Improved performance when using many lights in a map.
A light scale in addition to color and range, allowing for much brighter lights.
Support for larger maps with proper lighting (up to 200x200 units/cells currently vs. 50x50 in the public version). Obviously larger maps will require more memory.
Per frame update limits to avoid stalls and drops in performance when manipulating many objects or changing a lot of the map at once (like adjusting global lighting settings).
Working quality settings which can be adjusted so lower end systems will run better while still having lighting and shadows.
Per-tile rendering with quality control when Rendering out images. This will allow Arcane Mapper to generate very large images by increasing the Pixels Per Unit when rendering out your map. This will be great for printing, for example a 50x50 map at 300 Pixels Per Unit will generate a 15,000 x 15,000 pixel image.
Quality settings when rendering out your maps to images, to allow for sharper shadows, higher quality antialiasing and other image quality features when exporting.
Render preview with the ability to limit the area rendered - so you don't need to move parts of your map around when you only want to export a limited area.
Shadow fixes for Intel Integrated Graphics.
Other lighting improvements.
When can you expect it?
Obviously predicting dates for major changes like this is error prone, so any dates given are subject to change. However this release is expected to be complete within the next 2 weeks.
Tutorial 2: Library
This is the second of a series of Tutorial Videos for Arcane Mapper.
*Best watched in fullscreen at 1080p so the text is legible*
This is the second in a series of tutorial videos for Arcane Mapper. This tutorial covers adding new assets to your Library, setting up light sources, shadows, textures and tags.
These features were supposed to be part of the previous build - but this completes the first build in the list of "Upcoming Builds" - "Basic Fixes & Improvements."
This build allows you to set the default Floor and Wall textures for rooms, which should make texturing dungeons much easier. In addition you can set the default Wall Height, which makes the wall height feature much more useful. If you want to create interiors, such as Inns, a Wall Height of 2 might be good in order to place rooms close together and keep the wall thickness down while the default of 16 works great for dungeons and castles.
To change the default floor or wall textures, simply click on the one you want to change and then click on one of the textures in your Library. To change the default Wall Height, edit the value.
The defaults are saved when you exit the program so you don't have the change them every time you wish to edit.
The next build, "Tiled lighting," is now in progress.
Bug Fix Build Version 1.0.2800
A new version has been released - Version 1.0.2800
This is a bug fix build with no new features. The ability to set the default floors, walls and wall height will be in another build that will be released soon.
Fixes include:
Fixed crashes that could occur when deleting items from your Library.
Arcane Mapper no longer allows you to move vertices on top of each other. If you wish to delete a vertex you now need to manually delete it. This should make Room editing more stable.
NVidia Optimus laptops should now properly select the NVidia GPU when running Arcane Mapper. This requires a recent driver and "Auto-select" must be enabled in the NVIDIA Control Panel.
Arcane Mapper should now work correctly on 32 bit systems.
Copy/Cut and Paste now works correctly between layers.
Layer Move now keeps the objects selected as they move between layers.
The texture list now scrolls properly when a room is selected.
OpenGL version is properly validated and initialization fails if OpenGL 3.0 is not supported.
OpenGL version info is printed out to the log file to make debugging issues easier.
Reduced default MSAA settings to improve performance and memory use on older systems and laptops.
MSAA sample count is properly validated and MSAA is only enabled if the hardware supports it.
Added logging earlier in the program startup to help debug startup issues.
Layers above the "Props" layer are no longer black.
Tutorial 1: Object Manipulation
I have just released the first of a series of tutorials which will hopefully make Arcane Mapper easier to use. There will be at least 3 videos in this series, more as the product continues to develop.
*Best watched in fullscreen at 1080p so the text is legible*
The first of a series of tutorials for Arcane Mapper. This tutorial goes through basic object manipulation - placing objects on the map, selecting, moving, rotating, scaling and other manipulations. It also covers using Object Tags to show only a sub-set of your Library to making finding objects easier and using Layers to easily add ground details.
Tutorial 2 will cover add new objects to your Library and setting up their properties - such as scale, shadow details, setting up light sources and more.
Tutorial 3 will cover the entire process of creating a new map from Map Settings such as size, backgrounds and grid settings to drawing out and connecting rooms, adding pits and raised areas, adding ground details, props, saving and finally rendering it out for use with Virtual Tabletops and other systems.