Hence why normalmaps usually are bluish. Regarding gcc's question I imagine there are any number of neat ways to do it. So, yeah, I'm rolling it from scratch. Originally posted by gcc: So, I've got a simple implementation working, and it seems to work correctly or at least it produces a similar output to NMG. The input bumpmap: The output normalmap: So, I was going to thread the normalmap generation, such as having 4 threads each processing different scanlines, but So it doesn't really seem worth it. But threaded batch processing, sure why not!
Just had to say that the pictures and links in this thread are very interesting. I too love the fact that Ars dwellers are so helpful. And with that last post, I finally sort of get what the heck you have all be talking about! Well, too late, I'm going to write a GUI for this over the next couple days. This is awesome.
Normalmapping Tools for Mac? - Unity Forum
Just yesterday, I was looking for a normal map generator. Somehow I missed this thread. I'm looking forward to the result!
- free green screen editing software for mac!
- canoscan lide 25 mac os x 10.9;
- NVIDIA Texture Tools for Adobe Photoshop | NVIDIA Developer.
- mac bios how to access;
- mac keyboard shortcut reload page?
- How to create Normal Map in Photoshop on Mac ?.
- Standalone Normal Map generator on OS X.
A normal a vector that is tangent to a surface is used in 3D modeling to provide lighting data. A normal map is like a bump map, in that it provides detail work to a low vertex count not super detailed model to make it look more detailed. The normal map replaces the normals on the model, so that when lighting is calculated the model can seem more detailed than it is.
Imagine part of a 3D characters shoulder is modeled. Because you want to make the game run in realtime you have a limited number of vertices, so you make the model less detailed. Say the shoulder of the model is now faceted. Each facet, because its basically a plane, has the same normal across its surface. So the lighting is the same for every point on the shoulder, unlike in a super high res model that would be curved. Make sense? Its basically a way to get detail when there isnt any in the geometry which is vector data from a texture that is a bitmap.
I have begun the GUI.
I even have an icon. No saving yet, or batch processing. And it crashes when you quit.
But I just wanted to show everybody here that it's happening! On a side note: I've written a couple Cocoa apps using bindings before, but it was painful, probably because I learned cocoa using the traditional write-yer-own-glue-code and controllers yer-damn-delf way. I think I'm beginning to grok bindings. Can you post the process you are using to generate the maps?
I think 40 msec per image could be improved upon unless that is a huge test image. I'll post the code. I will tell you right now it's absolutely unoptimized. Absolutely positively magnificently unoptimized. You know the drill: I was just really surprised at how quick it was without optimization. I recall all sorts of silly optimizations I used to use on my powerbook, like custom square roots and various stuff from apple's intrinsics macros. OK, as promised, here's the code I wanted to eat lunch, first First, here's the NMClampMode enumerator and a method to clamp values with it: The normalmap is 24bpp unsigned char, and the bumpmap is 8bpp unsigned char.
Both are of the same dimensions. Too many. A big speedup would be to precalculate the offset for, for example, the scanline and pass that and the x offset value.
This would have ramifications for edge-wrapping, but not insurmountable. They seem to work, but for all I know I've fubared it. Ah, here's a download of the source, if you gcc or anybody else would like to optimize One simple thing you could do is to call the clamping only at the border pixels. You'd iterate from filterwidth to width-filterwidth without clamping and then loop separately over the border pixels with clamping.
Or you could use vecLib to accelerate the thing. Code like that shouldn't be very hard to translate in fact, this might even work as a Core Image filter. The first question I have is whether floats are needed at all. The source and destination are both 8 bits per component images right? I think I'm going to take two approaches: I don't see why I can't. After I do that, I'll try caching the scanline offset which will save a number of multiplies and implement an entirely different lookup path depending on clamping mode to eliminate so much branching in the inner loop.
Don't forget step 0 of optimization: I use shark so much it's in my dock. I live and breathe by shark. That being said, to properly figure out where the bottlenecks are, I'm going to have to make a test that just continuously runs the normalmapping code thousands of times for shark to get enough samples. Using all ints will speed up the code quite a bit. I hope the compiler is going to optimize for the loop counts fairly well. Another trick is to use YCbCr frames from JPEG sources which is not only faster to decompress but also gives you the brightness channel to work with.
I've not done much 3d programming, so take my 'optimizations' with a grain of salt, but they are all 5 minute jobs to implement Likewise on the normal map Like this You're right about the spurious division by Also, your optimized loop is pretty much exactly what I was thinking. Back then, on a mhz celeron, every cycle mattered! Well, they still do, but not as much. I'm spoiled by letting GPUs do most of the work. I like the idea of acting on float buffers That being said, my plan right now is to make the app feature complete before I optimize.
As of last night, I have exporting working with a nice sheet where you can select output format and compression options and right now I'm implementing dimension locking for resizing. Easier said than done! Cocoa bindings are falling into an infinite loop Once that's done I'm going to make a batch processor. Just a window with a drop target, and batch settings. When that works Shamyl Zakariya. Sorry for the OT. Ars Scholae Palatinae et Subscriptor. Could someone explain in layman's terms what is going on here please? Jump to: NYC Registered: Jun 15, Posts: Mon Jun 25, 3: Shamyl Zakariya Ars Praefectus Tribus: Seattle, WA Registered: Feb 19, Posts: Mon Jun 25, 5: May 7, Posts: Mon Jun 25, 6: Mon Jun 25, 8: Checking in unity then booting in windows to edit in gimp then booting in uity again seems like a pretty bad workflow.
Parallels could be an option It's weird.
- CGTalk | Normal Map Generator for Mac OS X!
- Standalone Normal Map generator on OS X - Ars Technica OpenForum.
- Create an account or sign in to comment?
- Recommended Posts.
- Nvidia Normal Map Filter Mac! New - yxohawyxeq.ml.
For windows thre's tons and tons of normalmapping tools - no matter 2D or 3D. For Mac there seem to be very few. Especially good ones. May 11, Posts: The mac options suck for normal map generating programs. But I use this app with Parallels and it works great. Windows just has more options for these kinds of things.
It's alot cheaper than Crazybump too. BenH , Oct 28, Looks very interesting. Thanks for the tipp. I remember that they stated they'd do it but there were technical problems. Hey BenH, Very cool app.
Are you using the Pro or CL version with Parallels? It requires Directx 9, but that just means you cant use the big realtime preview window. I just look at the changes to the swatches and its fine for me. I'm gonna give the pro version a try in vmWare Fusion. Hopefully it works a bit better, a 3D preview would be nice.
Jun 3, Posts: My normal map workflow: A Create the model either in 3ds max or Zbrush B Unwrap the model make sure there are no inverted of overlapping faces. C Import the model into Zbrush again and paint both the diffuse map and high-res normal map. D Export everything into 3ds max again make sure everything looks good E Minor tweaks in photoshop. Mostly getting rid of unwanted "stretches" etc. F Export to FBX and voila.. I just wanted to let you know that I asked Simone from Lisanet to trying to compile the Normalmap Plugin for gimp in her next OSX release and she actually did.
It works perfectly I tested it. So if you are still looking for a way to create normals outside unity - go get it. Awesome stuff, thanks very much!
Normalmapping Tools for Mac?
You must log in or sign up to reply here. Show Ignored Content. Your name or email address: Forgot your password?