From Scanned Reality to Production Ready Assets: Jurand Macioszczyk’s Photogrammetry Workflow
Hi Jurand, thanks for taking the time to speak with us. To get started, could you briefly introduce yourself and tell us how your journey into 3D, environment creation, and photogrammetry began?
Hi everybody, thank you for the chance to share my story. My name is Jurand Macioszczyk, but on the internet, you can find me under an easier to find and remember nickname – JurandM.
At the age of 22, I moved from Poland to Ireland to start a new chapter of my life. Back then, I was invested in my own YouTube channel about old games that I grew up on (N64, SNES, PlayStation 1).
That experience set me on the path of creative work and my search for my passion. At the beginning, it was video editing, then movie posters, font and logo design, websites, and so on. After two years of searching, I found a software called ZBrush, and it was love at first sight. I spent every free moment after work learning and playing with it, mostly by recreating old-school game concept art in 3D.
While I was enjoying it greatly, I was on a constant search to find my “niche,” as I wanted to become a 3D artist with my own specialization and a job position within the creative industry.
In 2018, I found a tutorial on how to create a 3D model of a T. rex based on a kid’s toy. CGPro ASMR used the Agisoft PhotoScan app (currently Agisoft Metashape) to show the whole process and explained the basics of photogrammetry. While the channel is not the most active currently, it offers top-quality educational content shared by industry veterans, and I strongly suggest anybody have a look.
I count that as the beginning of my photogrammetry journey, which lasts to this day.
Career & Artistic Path
You’ve worked across a wide range of projects, from personal environments to large-scale productions. Looking back, what were the key moments or decisions that helped shape your artistic direction?
I read many interviews with fellow artists, and it’s a very important question that allows us to understand what truly motivates others – I’m happy to receive it. I was expecting it would take me longer to define my answer, but surprisingly, it is easy to answer.
I believe my first key moment was when I found an online community on Discord that was scanning specialization-oriented (not only photogrammetry, but a whole range of techniques). Connecting with industry specialists who have a common passion to ask questions, search for answers, and share struggles and findings was the best I could ask for to grow and verify my learnings.
The right environment allows us to thrive and grow way faster than on our own.
At the same time, it is something I repeat to anybody who starts out with their passion – being involved in such an environment is not only a chance to broaden our perspective and knowledge, but also to verify it at every single stage and understand it better. Once we see enough, we can honestly admit our lack of knowledge and form new questions to push ourselves into the unknown, which might or might not overlap with what we know already.
That leads to the second moment – understanding how big of an edge deep knowledge and fluency in Pixologic’s ZBrush application gave me. For many years, ZBrush was seen as tailored perfectly for editing heavy geometrical outputs – such as those resulting from scanning/photogrammetry processing. I remember how the ability to work with outputs in a comfortable and fluent way built my confidence and motivated me to seek workflows, applications, optimization, and so on, to learn and expand. Basically, I skipped one of the major obstacles that people starting out on the scanning path meet along their exploration.
From there, it has been an ongoing exploration of other elements that continues to this day, with photogrammetry as the centerpiece (material creation from surface scanning, photometric stereo, and currently workflow optimization and automation via scripting in Python). Without those two key moments, I surely would not have expanded and, as a result, learned more about the process, other software – yes, that includes RizomUV as a software that allowed working with heavy meshes even all those years ago – and techniques.
And what is my “artistic direction”? From the perspective of time, I believe it is “efficiently solving creative problems.”
Your work often balances realism with strong atmosphere. What initially drew you toward environment creation and photogrammetry rather than other CG disciplines?
I was always focused on delivering results and solving concrete problems, and photogrammetry fits into that mindset very well.
Scanning techniques force us to work directly with real data, and our goal is to process it as accurately and efficiently as possible. Challenges that happen in both worlds (real and digital) are certainly something that keeps my mind occupied and excited every single time.
When it comes to environment art, I look at it more like a side effect and a natural direction where I can leverage the asset, texture, and plant atlases creation know-how that I gathered over years of work with various clients and projects.
As you might expect, once you capture an asset through photogrammetry or photometric stereo, you can either move on to the next project or use that asset to recreate a real-world location in a digital form.
Cardboard Boxes – Jurand Macioszczyk
Visual Identity & Approach
Your environments feel very grounded, with a strong sense of scale and material believability. What do you usually focus on first when building a scene or asset: composition, lighting, materials, or something else entirely?
I focus on the lighting of the scene as something that allows me to control visible details, set up the mood, and decide on the visible elements, instead of building something that would not be visible in the first place. The second aspect is the camera view and perspective. Light sets up the mood of the story, while the camera tells it with more details.
I prefer to define a good main look for an object to be sure I do not invest time over elements that are not in view or that I’m not happy about. I know myself enough to notice a tendency to jump around and keep adding more and more; such a hard limit forces the brain to focus on the here and now.
Do you see environment creation and photogrammetry more as a technical challenge or as a storytelling tool? Where do you personally draw the line between artistic intuition and technical precision?
I was always about challenges and comparisons as a way to understand differences and form questions from personal findings. Such an analytical mindset pushes me towards saying “technical challenge.” At the same time, since the beginning, I knew that we are doing a digital snapshot of real-world objects. Those already have a story to tell, hidden in damages, discoloration of the surface, and general dirt that we used to see added artificially to countless game and movie assets at later stages of workflows.
We can, of course, change many things during processing to control how much of that story seeps through (which gives us artistic freedom), but I believe our role is mainly to keep it as true as possible. As a result, even the simplest rock can reveal something that everybody ignores or that was hidden in plain sight.
Workflow & Tools
Can you walk us through your general workflow when starting a new scanned asset or environment, from capture or blockout to final lookdev?
Safety. That is the first and most important step that we can take at the very beginning of the capture process. We are working outside of the computer with fragile/expensive objects, and as a result, way more things can go wrong and lead to damage – to our person, somebody else, living creatures, property, or hardware, and finally the environment or object we are capturing. Sadly, there is no Ctrl+Z or backup we can use in the real world.
Then, there is the control of the environment to reduce variables affecting final geometry and texture quality. I know it sounds weird to talk about checking weather forecasts and sunlight positions during a computer graphics interview, but it is the truth – at least for me. An investment of 2 hours for good planning of the capture before the first click can save ten or more hours we would spend on fixing geometry and textures through cleanup, reconstruction, delighting, and more.
Next is the prioritization of the work order – time is an aspect that is limited and affects our data (due to the light position, wind moving stuff, or people who might step into the scene). It is way better to focus on objects that can be removed the next day, or are important and more affected by time. Quality over quantity, but with modifications.
And finally, we can go home and drop our data onto the computer to start the digital part of the workflow!
That part depends on the final use case of the asset, and it can reduce the workflow. One way is as simple as dragging and dropping photos from an SD card into one of the photogrammetry applications, waiting a moment for alignment, mesh, and texture generation (using the output as it is) – mobile apps are the best example of that (in cases where we capture with a phone). Other workflows involve a whole set of steps.
Compared to traditional 3D graphics, where we start with basic blocking out, UVs, and then adding details by subdivision or using normal maps for detail creation with texture buildup at the end, photogrammetry provides us with super dense geometry (including errors caused by not enough or overshoot and environmental variables) with a base color map (which has baked-in details from photos by averaging or picking the sharpest parts of the photos – including reflections and sunbeams, as you might expect).
Photogrammetry processing is about adjusting the model towards a more standard workflow that can be further used by other artists, and that is, of course, my first general step in processing a model.
Ahh right, how do we get there from the pictures we just took? We align them in photogrammetry software like RealityCapture, 3DF Zephyr, or Metashape. If no errors can be spotted at this stage, then we generate a raw model with the resulting texture, and we use that as our 3D starting point. Of course, while that process sounds trivial, it is a rabbit hole that many try to outline via countless tutorials, with few jumping into the topic way deeper or from an advanced side.
Personally, once I have the raw model, I focus on the removal of rubbish geometry and recovering details. From there, I can create a simplified version of the model by standard modeling or decimation and create UVs in order to rebake geometry and texture details from the clean raw scan. That way, we not only include details from a magnitude bigger model as a normal/displacement map, but we also save a significant chunk of UV space and compress our raw textures almost losslessly.
At this point, we have reached a moment where we have manageable geometry with UVs that we can use in a more standard way and, if we want, a set of supporting maps beside the albedo map: AO/Curvature, Normal, and displacement. Of course, through life hacks, we can collect estimations of surface reflectance and metallic properties, but that is the subject of countless scientific papers focusing on math and physics.
Your projects often involve complex geometry and high surface detail. How important is planning early stages like UVs in maintaining flexibility later in production?
One of the downsides of photogrammetry apps is their lack of judgment regarding what is and what is not important for the texture. I used to stay on the safe side and unwrap the raw scan at the same texel density everywhere. In order to avoid distortion, photogrammetry apps cut UV islands into thousands of smaller ones.
As you might expect, that leads to a significant loss of UV space through margins and padding. You can correctly assume, as well, that custom UV creation happens quite early in the workflow – before we re-project data from the raw model, once we have a clean and reduced (geometry) version of the model.
Once, I calculated the UV space waste out of pure curiosity, and on that particular scan of a heritage object, it reached 40%!
Smart UV creation creates an opportunity to compress textures from multiple UDIMs to half of that amount without losing quality. It is common knowledge that textures take up a significant amount of video memory (especially when we use a PBR workflow), so the biggest savings happen here.
How does that affect flexibility later in production? First and most significant is storage space for workflow and archiving purposes. It is always great to have a high-poly model with source texture quality in case of a change in workflow – caused by improvements in the target platform’s processing capabilities. Because we talk about numbers on a magnitude of millions and billions for a single model, disk space becomes a significant factor.
The second type of gain from the above is the ability to edit textures. While I personally can load 40x8k textures into Substance Painter, it is way easier to load 20 and work with those – or use Mari software, which is like ZBrush but for textures instead of geometry.
UV Mapping & RizomUV
UV mapping is often seen as a purely technical step. From your perspective as a photogrammetry artist, how much does UV quality influence the final visual result?
It depends on the final destination platform or use case. As mentioned before, photogrammetry software takes the approach of avoiding distortion by dividing islands as much as possible and applying a unified texel density across the whole model (unless we use an adaptive method). That allows us to receive the highest possible visual result at the very beginning.
The creation of custom UVs as part of the workflow is seen as an additional step and, in some situations, is not even needed – it’s more of a convenience that provides the gains mentioned above.
Of course, if we approach UV creation in a smart way, we can keep the source visual quality with a way smaller footprint, and I believe that is the main role of custom UV creation when it comes to photogrammetry.
Photogrammetry assets tend to come with dense meshes and challenging topology. How critical is a clean UV layout when working with scanned data, and how does RizomUV help you manage that complexity?
It might be surprising to hear, but a clean UV layout is not important at all! BUT…
My main reason behind that step is the ability to fix model texture imperfections, reconstruct things, and deliver a model that other artists can use during their part of the pipeline.
The best example would be: during the capture of a building, we have a model with thousands of UV islands provided by the photogrammetry software (in that case, RealityCapture). It is impossible to sample information from the textures of one wall and clone it over another – with the 3D model, we can’t see it, whereas the 2D view of the texture clearly shows the lack of a single position for the element, making it easy to sample for the clone stamp tool in Substance Painter.
When we create a custom UV with the representation of a single wall being a single UV island, we can use the 2D view of the UV space to transfer texture information over elements that can’t be seen in the 3D view.
Like I said, we can completely ignore the creation of UVs, but when it comes to more advanced processing of scanned data, we use everything as a tool.
At the very beginning of the interview, I mentioned that expanding from photogrammetry itself allowed me to find RizomUV. Why did I decide to stick with that software instead of using a competitor’s product? Blender, Maya, and basically everything out there that allows more advanced options to create UVs than ZBrush just struggled with dense geometry above 1 million polygons.
RizomUV, as a dedicated software, was not limited by host platform limitations. Back then and now (even with the significant advancement of Blender in terms of processing heavy geometry at 1 million and above), RizomUV is a solution that has the ability and tools to work with heavy meshes and create any UVs we want – the best of both worlds.
For years, I’ve been part of the beta testing group, and as a photogrammetry artist, I was testing RizomUV from that artistic point of view. From time to time, I was able to point out possible improvements, which the dev team was kind enough to introduce, even when photogrammetry-type data is not that popular.
How does RizomUV fit into your workflow, and at what stage do you usually rely on it the most?
I would say – on many stages.
ZBrush processing introduces the risk of non-manifold elements, and RizomUV is able to show them as orange dots or even inform me that the file contains critical errors in terms of topology. That way, I know that my model will not be loaded successfully for texture baking or transfer procedures at the beginning stages of the 3D workflow.
Another stage is, of course, the definition of new UVs just after the creation of a clean raw scan – for texture re-bake purposes.
Lastly, it’s when I need to downsize or introduce changes to the geometry and, as a result, the texture. It happened a few times that after delivering a 40-million clean model with a custom UDIM setup, I received a request to repack the UVs from 20x8k into 7x8k or something similar when hardware/workflow limitations appeared to limit the artistic vision.
In such cases, I can load that heavy mesh and adjust everything accordingly in RizomUV (the texel density panel is very useful here). Here is one of my personal records – repacking a 73-million polygonal model with 70x8k UDIMs into 25x8k; it wasn’t the easiest thing to do, but while slow, it was possible exclusively thanks to RizomUV.
As a bonus, I wish to point out that Rizom offers various inspection capabilities via gradient tools at the bottom of the GUI – it is really easy to select all islands under a certain texel density and find out which of those need to be removed or reshaped into new islands (I strongly suggest becoming familiar with the expand selection tool). Check it out for yourself, as inspiration might strike you – and don’t forget to share the idea with others! 😉
Ash Tree – Jurand Macioszczyk
What made you choose RizomUV over built-in UV tools, and what keeps it part of your day-to-day pipeline?
Every single person who uses ZBrush will surely smile when they see this question. While ZBrush is an amazing tool with a hard-to-match selection of features for geometry editing, it falls behind almost anything in terms of UVs. The unwrapping module and UV view in ZBrush are functional but do not even support UDIMs, which photogrammetry uses heavily.
When it comes to the second part of the question, I’m a strong believer that the best results come from dedicated tools, and even better when they are separate applications – that removes the limitations caused by the structure/code of other software. Thanks to that, the user experiences a clear separation of dedicated tools, the community can focus better when searching for answers, and there is a higher chance of shaping the future of the software since the dev team is only focused on the primary purpose of the application.
I like to point out whenever possible that dedicated tools offer a higher chance of introducing features tailored by user feedback. The RizomUV development team is an example of that, as they not only provide a standard dedicated feedback form but from time to time open community polls to hear the “Vox populi” on their dedicated Discord channel.
Ash Tree Turntable – Jurand Macioszczyk
A Slightly Deeper Look
Some artists try to minimize or fully automate UV work, especially when dealing with scanned assets. Do you think this mindset can negatively impact asset quality in the long run?
As always when it comes to similar questions, there is one answer – “it depends.” Mostly on destination platform limitations, client requirements, and the use case overall.
Both aspects – automatization vs. manual setup – bring gains and consequences and are always dictated by workflow and experience, with the addition of model complexity and size when we are talking about scanned assets.
Hero assets? It is always better to have control and the ability to process data in a more convenient way with fewer headaches caused by storage or memory limitations. We already spent many hours planning, capturing, and processing photos into a raw model, so why not invest a little bit more to optimize one of the biggest elements (literally, sometimes) – the UV space and the amount of textures?
On the other hand, when there is a need for bulk processing 100 scans of small and insignificant assets, I do not see the point of investing more time than needed – automatization might not even be needed as the UVs are already there; ugly and full of wasted space, but functional.
I think the best solution is to have the ability to decide and make an aware choice. I don’t mind the introduction of automatization dictated by user-provided guidance – it gives us the choice to further improve things or stick with the results.
With procedural tools and AI-driven workflows becoming more common, do you see photogrammetry and UV mapping as skills that will evolve, or ones that risk being overlooked?
Evolution for sure, at least for those who care enough to invest time and learn about the things that are making headlines. Machine learning – because that is what we are truly talking about when it comes to “AI” – opens up new technology, possibilities, and tools previously seen as theoretical. I look at it as a tool allowing automatization at an amazing scale if data for learning is provided or the correct scientific paper is applied.
Currently, Gaussian splatting is the best example in regard to 3D. Some people say it will end photogrammetry and that, as a result, we will not need geometry and UVs anymore. What do I think about it? I consider Gaussian splats as a second way to process the same input data and show a model without the downsides of photogrammetry – in exchange for limitations regarding processing and editing. Positives vs. negatives.
Not gonna lie, it would be nice to have an AI model that assists with the creation of UVs in place of current automated UV unwrapping tools, as an evolution/update of the toolbox.
I would encourage anybody to learn the basics in order to verify outputs and know how to introduce changes when those are needed.
Photogrammetry models – Jurand Macioszczyk
Production & Industry Perspective
You’ve worked on both personal projects and production-driven environments. What differences stand out the most when it comes to constraints, expectations, and creative freedom?
Let’s start from the end of the question. No matter if we are talking about a personal or a production-oriented project, we face the same real world with the same limitations applying to everybody. There is no difference (unless we want to enter copyright territory, then the difference is more apparent) between use cases, as photogrammetry is based on math and physics – we will take the same base amount of pictures regardless of whether we want to create a render of a product as part of our portfolio or for a client to use in a CGI-driven ad campaign. We might be asked to capture a specific object or location, but the difference ends there in terms of creative freedom. The workflow remains the same, and maybe only the values change if the client asks for more or less than we would use as input and processing goals.
Expectations, on the other hand, are on the opposite side of the spectrum. A client who saw and picked photogrammetry as a go-to solution aims for hyper-realism and as much detail as possible. While photogrammetry can help with that for sure, it is still limited by modern hardware.
True! We can load a 100% quality mesh into a game engine and show a 300-million polygon-rich model, but then it takes 7 or more GB of disk space and inflates render times. The expectation bar is at the very top from the client side when it comes to the result, and the role of the photogrammetry artist is also to outline limitations that most people aren’t aware of.
Of course, when we are doing a personal project, we are the client, and we receive direct feedback during the processing of files – we can agree with the processing times, the results, and the process itself (which is different from a standard 3D workflow). We can, of course, also decide that photogrammetry is not the solution we were looking for and, as a result, pick the path of a parameter-driven solution.
Lastly, the constraints. That one is mixed and “depends.” Hopefully, up to this part of the interview, I managed to outline photogrammetry as a solution that works the same regardless of the use case – as it is bound by physics and math – with a workflow of various degrees of complexity driven by the final use case and the object of capture itself.
Regardless of whether we are talking about client or personal work, we can capture something with a basic phone, or we might need a high-resolution DSLR camera with a macro lens to capture seeds or a heritage object that is really small. The captured data is the same; the processing steps remain.
From your experience, what makes a healthy production environment for environment and photogrammetry artists?
Clear communication between departments. There is nothing worse than receiving a request to capture a specific location or object that matches the artistic vision of production, only to hit a wall of copyright law and commercial photography licenses. Compared to other aspects of 3D art, photogrammetry strongly interacts with the real world, and such interaction brings additional challenges that not many are aware of.
Second is, of course, clearly defined expectations regarding delivered file quality, as a result of a conversation about the use case of the files and the needs of other team members who will work with that data further.
“Of course we can send you a 700-million polygon model, but are you… oh, they care about the highest possible quality and they know what they are doing? You sure?… Yes, I see, just keep me in mind in case of further changes or possible modifications of the file” – a subject of additional processing fees.
Sand Stone – Jurand Macioszczyk
Advice & Learning
What advice would you give to artists who want to reach a professional level in environment creation and photogrammetry?
Find a community that allows you to learn from your own mistakes as well as other people’s. Exchange your ideas, collaborate, ask open questions, and be mindful that there is always an exception to the rule/workflow that you just learned. Photogrammetry is an interesting and deep topic sitting more on the scientific side, so be ready to read one or two scientific papers as well.
Are there things you wish you had paid more attention to earlier in your career?
I kid you not but… UV creation and texturing. Those two were the reason why I picked photogrammetry in the first place – an amazing technology that gives me a photorealistic texture without the creation of UVs? Damn!
How naive I was back then 🙂 But from the perspective of time, I was forced to learn the basics of every aspect in order to fix things broken by the photogrammetry software and user (me) error anyway. Maybe with a better understanding I could… That does not matter! I made the best decisions based on my existing knowledge back then.
While I considered my first two years with ZBrush as wasted for a long time by just playing with the tool, I see now how I built up a fluency that benefits me to this day – I was able to hyper-focus on something that became my foundation.
Looking Ahead
What excites you most right now in terms of tools, workflows, or artistic directions?
Automation. It is not clear from my portfolio, but over the past year, I strongly focused on the Python programming language and the creation of custom tools in order to standardize and automate my workflow and data processing.
I jumped into AI in October 2022, and I noticed over time that a coding language is a must. I managed (regardless of earlier failed attempts and dysorthography) to become a certified advanced Python specialist and understand code enough to know what questions to ask or look for when I tinker alongside an LLM in order to create yet another solution that makes my life easier.
As a result of this ongoing exploration, more and more tools are added to my toolbox – auto-masking, detection of blurred photos, data transfer, and pre-processing… all of that allowed me to cut down my processing time by 60% when we talk about seam-free texture creation from scans.
I’m looking forward to the moment when it will be possible to overcome all the small things that cause slowdowns: the reconstruction of missing parts of a model (we are close, but not there yet), model optimization in terms of geometry density (model generation instead of decimation sounds appealing), and finally the ability to reconstruct or show objects that are impossible because of optical physics (Gaussian splatting is already there, and yet we receive new improvements on a weekly basis).
Finally, how do you see the role of photogrammetry artists evolving over the next few years?
Considering the condition of the main industries that were using photogrammetry? I can’t say for sure, as demand drives sales/the need for such services.
When it comes to adaptation, lucky for us, the base idea behind the technology has not changed since its creation. I believe that evolution will happen over outputs, even when some people will yet again scream, “it is the death of photogrammetry!” while opening applications to align pictures anyway.
New tools, new methods, new solutions – we can see those changes happening right here, right now, thanks to machine learning – and that opens doors previously closed behind a “theoretical” approach.
Of course, it will impact adoption as the entrance barrier will be reduced – the question is, how user-friendly are new solutions going to be? I learned scripting in order to regain control over large language models’ output, but can an ordinary user do anything beyond blindly accepting what the product of a big tech company provides? I don’t think so.
I know one thing for sure, and it remains set in stone – those who are adopting now, mostly by learning to code, stand in front of new possibilities, tools, and ways to turn a passion into a job.