• подарки оптом, подарки опт
  • сувениры оптом, сувениры опт
  • бизнес сувениры
  • бизнес подарки
  • сувенирная продукция
  • купить футболки
  • бейсболки
  • ежедневники, ежедневник
  • подарки для женщин
  • подарки для мужчин
  • стеклянные двери
  • стеклянные перегородки
  • cтеклянные лестницы
  • изделия из нержавейки
  • Archive for June, 2011

    Even more 3D scans

    I kept testing Photofly to see what it can do. The biggest project so far was this dead tree:

    100 images, 660 Mb of data, 46 manual reference points. The resulting mesh has 800K polygons, a 4K and a 2K textures.

    The photo session took  about 15 minutes. I grew restless towards the end and started to sample the surface more sparsely. That caused tracking problems and low resolution textures in certain areas. Had I spent the time to take even more images, for another 15 minutes, I could have saved the 2 hours of manual stitching.

    The mesh is rather smooth and unnecessarily dense so I think the poly count could be halved without problems.

    Written on June 26th, 2011
    Categories: Uncategorized
    Tags: ,

    Photofly

    I’ve just tried Autodesk’s Photofly, a photo based 3d modeling service and the results are pretty good.

    My test project was a small rock, roughly 4 x 4 x 3 cm (1.5 x 1.5 x 1.2 inches) in size. I took 57 images, 14 Mp (4000×3000) each, under almost perfect diffuse lighting conditions. The processing of the pictures from file selection to the final, high resolution mesh took about 15 minutes. This includes uploading stuff to the cloud and getting a draft mesh as an intermediate step.

    I learned that there are a few things one should keep in mind before starting taking pictures:

    - Shiny surfaces confuse the feature detection algorithms, matte materials work much better.

    - Diffuse lighting is highly recommended because it helps eliminating specular highlights and also prevents sharp shadows getting “baked” into the diffuse texture.

    - Depth of field can be an issue, especially when taking photos of small objects in macro mode.

    - Easily distinguishable, single color background seems to be important.

    I plan on scanning different rock, wood, dirt, etc surfaces an building a library of diffuse/bump map pairs which could be used directly as textures of brushes to paint onto meshes.

    Written on June 20th, 2011
    Categories: Uncategorized
    Tags: ,

    Normal map sharpening

    I’ve never liked how bilinear filtering makes normal maps resemble molten plastic when the camera gets too close. On certain types of surfaces like rock or rusty metal, this effect can be counteracted for some degree by applying a micro normal map. However when it comes to machine like assets with well defined, geometric features, that method doesn’t help much so I tried a different approach.

    The idea is simple: let’s quantize the elevation of the normal (Z component) and have the filtering work for us by providing a less blocky contours.

    Here are a few closeups of the test map, starting with a scenario where the input texture is rather low res:

    256×256, DXT1

    256×256, DXT1, Sharpened

    The compression artifacts got exaggerated by the process, giving a somewhat crumpled look to the surface. It might even come in handy but if it’s not desired then uncompressed normal maps (V8U8) could be used:

    256×256, V8U8

    256×256, V8U8, Sharpened

    (Please note that while the resolution is the same as above, this compression scheme produces a texture 4x the size of the DXT1.)

    The overall look is better with much less crookedness on the edges but pixel thin details are a bigger problem than before.

    Here are some higher resolution examples:

    512×512, DXT1

    512×512, DXT1, Sharpened

    512×512, V8U8

    512×512, V8U8, Sharpened

    Since data is actually discarded during quantization I only blend in the sharpened version of the normal map when the viewer gets really close. The whole thing costs 16 instructions (13+3 for the depth based blending) and the a few parameters can be tweaked for optimal looks.

    One could also create a mask texture to define where to apply the sharpening: very fine details and large, gradual elevation changes should be excluded.

    Written on June 12th, 2011
    Categories: Gavit, My projects
    Tags: , ,

    Distance field generator for Pixel Bender

    Version 1.1 of the filter and it’s documentation is available.

    I only tested it on my PC so please let me know if you run into problems on other systems.

    Written on June 5th, 2011
    Categories: My projects
    Tags: , ,