{
    "version": "https:\/\/jsonfeed.org\/version\/1.1",
    "title": "3D Library: posts tagged tools",
    "_rss_description": "A curated library of useful motion design insights, tips and tricks for quick reference and practical guidance",
    "_rss_language": "en",
    "_itunes_email": "",
    "_itunes_categories_xml": "",
    "_itunes_image": "",
    "_itunes_explicit": "",
    "home_page_url": "https:\/\/balyberdin.com\/library\/tags\/tools\/",
    "feed_url": "https:\/\/balyberdin.com\/library\/tags\/tools\/json\/",
    "icon": false,
    "authors": [
        {
            "name": "Vitaly Balyberdin",
            "url": "https:\/\/balyberdin.com\/library\/",
            "avatar": false
        }
    ],
    "items": [
        {
            "id": "16",
            "url": "https:\/\/balyberdin.com\/library\/all\/ior-list\/",
            "title": "About IOR Material List",
            "content_html": "<p>Even though I don’t create photorealistic renders, I often look up IOR values for glass, metal, and other materials. But the databases I find are not always user-friendly, or worse, just incorrect.<\/p>\n<p>To fix that, I spent over 55 hours and built my own, using only reliable sources:<br \/>\n💎 <a href=\"https:\/\/balyberdin.com\/tools\/ior-list\/\">IOR Material List<\/a><\/p>\n<div class=\"half-img no-radius\"><div class=\"e2-text-picture\">\n<a href=\"https:\/\/balyberdin.com\/tools\/ior-list\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/balyberdin.com\/library\/pictures\/ior_list_13_min.png\" width=\"1800\" height=\"1200\" alt=\"ior list for 3d designers\" \/>\n<\/a><\/div>\n<\/div><p>To make it easy to use, I added:<\/p>\n<ul>\n<li>Smart search by name, synonyms, value, and category<br \/>\nYou can find <f>saltwater<\/f> by typing <f>sea<\/f>, <f>1.34<\/f> or <f>liquid<\/f><\/li>\n<li>A source link for each material<br \/>\nSo you can check exactly where the value came from<\/li>\n<\/ul>\n<ul>\n<li>One-click copy for any value<\/li>\n<li>Labels with ★ for the 20 most common materials<\/li>\n<li>CSV file with a full dataset of 120+ materials<\/li>\n<\/ul>\n<p>To keep things accurate, I had to add one more feature:<\/p>\n<ul>\n<li>Separate table for metals with complex IOR values<\/li>\n<\/ul>\n<div class=\"half-img no-radius\"><div class=\"e2-text-picture\">\n<a href=\"https:\/\/balyberdin.com\/tools\/ior-list\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/balyberdin.com\/library\/pictures\/ior_metals_03_min.png\" width=\"1801\" height=\"1200\" alt=\"ior list of metals with complex iors for 3d designers\" \/>\n<\/a><\/div>\n<\/div><p>To explain why I had to split the materials into two tables, let’s dive into the optics for a bit.<\/p>\n<h2>What is IOR?<\/h2>\n<p>In 3D, we use index of refraction to control how strong the refraction looks. But physically speaking, it measures how much light slows down when entering a material.<\/p>\n<p>For example, water has an IOR of <f>1.33<\/f>. That means light travels about 25% slower in water than in a vacuum.<\/p>\n<p>Here’s why:<br \/>\nWe use the speed of light in a vacuum as the baseline. It has an IOR of <f>1<\/f>.<br \/>\nTo find how much light slows down, we divide <f>1<\/f> by the material’s IOR.<\/p>\n<ul>\n<li><f>1 \/ 1.33 ≈ 0.75<\/f>: light in water keeps only 75% of its speed<\/li>\n<li><f>1 − 0.75 = 0.25<\/f>: that’s 25% slower<\/li>\n<\/ul>\n<p>The higher the IOR, the slower the light, and the stronger the refraction.<\/p>\n<h2>Why does light bend when it slows down?<\/h2>\n<p>Here’s an easy way to picture it.<\/p>\n<p>Imagine roller skating on smooth pavement. Suddenly, your right foot hits grass and slows down. But your left foot keeps rolling, and your whole body starts to turn.<\/p>\n<div class=\"half-img\"><div class=\"e2-text-video\">\n<video src=\"https:\/\/balyberdin.com\/library\/video\/ior_analogy_01@loop.mp4#t=0.001\" width=\"1800\" height=\"900\" autoplay muted loop playsinline alt=\"\" \/>\n\n<\/div>\n<div><p>Light behaves the same way. When it hits a denser material at an angle, one side of the wave slows down first, causing it to change direction.<\/p>\n<h2>Why can’t IOR be below 1?<\/h2>\n<p>IOR less than <f>1<\/f> would mean light goes faster than in vacuum when entering the material. That only happens in rare cases like x-rays or plasma, but not in everyday materials. That’s why:<\/p>\n<blockquote>\n<p>A single IOR value below 1 is never physically accurate for materials we use in 3D<\/p>\n<\/blockquote>\n<p>Of course, unrealistic material settings are totally fine when they support artistic vision, but they just don’t belong in a physically accurate list.<\/p>\n<h2>Simple IOR for common materials<\/h2>\n<p>Most materials like glass or water interact with light in a simple way. Light just passes through with almost no absorption, and we only need to describe how much it bends.<\/p>\n<p>A single value is enough for that: the refractive index, <f><i>n<\/i><\/f>:<\/p>\n<ul>\n<li>Ice: <f><i>n<\/i> = 1.31<\/f><br \/>\nLight slows slightly, minor refraction<\/li>\n<li>Diamond: <f><i>n<\/i> = 2.42<\/f><br \/>\nLight slows more, stronger refraction<\/li>\n<\/ul>\n<p>In reality, red, green and blue wavelengths bend slightly differently. This effect is called dispersion. But since the difference is usually small, we typically use the <f><i>n<\/i><\/f> value only for green light, simply because it sits near the center of the visible spectrum.<\/p>\n<h2>Complex IOR for metals<\/h2>\n<p>Metals behave in a more complex way. Light doesn’t pass through them. Instead, most of it reflects, and the rest gets absorbed.<\/p>\n<p>To describe this behavior, a single IOR value is not enough. Instead, we use a complex IOR, made of two parts:<br \/>\n<f><i>n<\/i><\/f> (real part) — controls brightness and color of reflections in combination with <f><i>κ<\/i><\/f><br \/>\n<f><i>κ<\/i><\/f> (imaginary part) — controls how much light gets absorbed<\/p>\n<p>Plus, metals reflect red, green, and blue light differently. That’s what gives them their color tint, like the yellow of gold. To capture this, we need a separate <f><i>n, κ<\/i><\/f> pair for each channel. That’s why it’s also called RGB IOR.<\/p>\n<div class=\"no-radius\"><div class=\"e2-text-picture\">\n<img src=\"https:\/\/balyberdin.com\/library\/pictures\/complex_ior_gold_02.png\" width=\"1800\" height=\"310\" alt=\"complex ior for gold\" \/>\n<\/div>\n<\/div><p>In metals, light doesn’t travel through the material, so <f><i>n<\/i><\/f> doesn’t describe speed inside the material. It only affects how the reflection looks. That’s why <f><i>n<\/i><\/f> can be below <f>1<\/f> in metals, but only as part of a complex IOR with <f><i>κ<\/i><\/f>.<\/p>\n<p>Technically, we could also use complex IOR values for non-transparent materials like wood or plastic, since they also absorb light. But their absorption is so minimal that one IOR value is accurate enough.<\/p>\n<h2>How to use complex IOR?<\/h2>\n<p>For most projects, RGB IOR is overkill. Usually it’s enough to set <f>Metalness<\/f> to <f>1<\/f> and pick the base and specular colors. For accurate colors, use values <a href=\"https:\/\/physicallybased.info\/\">from Physically Based<\/a>.<\/p>\n<p>But if you want to be precise:<\/p>\n<ol start=\"1\">\n<li>Check how your renderer works with RGB IOR:\n<ul>\n  <li>Redshift: use the <f><a href=\"https:\/\/help.maxon.net\/c4d\/en-us\/#..\/Subsystems\/Default\/Content\/html\/IOR_To_Metal_Tints.html\">IOR to Metal Tints<\/a><\/f> node<\/li>\n  <li>Octane: set <f>Metallic Reflection Mode<\/f> to <f><a href=\"https:\/\/docs.otoy.com\/cinema4d\/MetallicMaterial.html\">RGB IOR<\/a><\/f><\/li>\n  <li>Cycles: in the <f>Metallic BSDF<\/f> shader, set <f>Fresnel Type<\/f> to <f><a href=\"https:\/\/docs.blender.org\/manual\/en\/latest\/render\/shader_nodes\/shader\/metallic.html\">Physical Conductor<\/a><\/f><\/li>\n<\/ul>\n<\/li>\n<li>Find a metal in the IOR list<\/li>\n<li>Copy the RGB values for <f><i>n<\/i><\/f> and <f><i>κ<\/i><\/f>, and paste them in the same order as shown in the table<\/li>\n<\/ol>\n<h2>Conclusion<\/h2>\n<p>It’s surprising how much complexity hides behind a simple value we use so often. That’s exactly why I built this database and wrote this article. To simplify workflows and shed light on what IOR actually means.<\/p>\n<p>If you want to dive deeper into the optics, I recommend these great videos by 3Blue1Brown. I partly used them as sources for this article:<\/p>\n<ul>\n<li><a href=\"https:\/\/youtu.be\/KTzGBJPuJwM?si=SGA66FsYH1AAkI3U\">Visualizing Feynman’s lecture on the refractive index<\/a><\/li>\n<li><a href=\"https:\/\/youtu.be\/Cz4Q4QOuoo8?si=XWfDdlg1KkLSSYwE\">Answering viewer questions about refraction<\/a><\/li>\n<\/ul>\n<p>If you’d like to suggest materials to add, feel free to reach out. I’m always looking to improve the list.<\/p>\n",
            "date_published": "2025-07-04T11:40:44+02:00",
            "date_modified": "2025-07-06T15:23:18+02:00",
            "tags": [
                "cinema 4d",
                "redshift",
                "tools"
            ],
            "image": "https:\/\/balyberdin.com\/library\/pictures\/ior_list_13_min.png",
            "_date_published_rfc2822": "Fri, 04 Jul 2025 11:40:44 +0200",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "16",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/balyberdin.com\/library\/pictures\/ior_list_13_min.png",
                    "https:\/\/balyberdin.com\/library\/pictures\/ior_metals_03_min.png",
                    "https:\/\/balyberdin.com\/library\/pictures\/complex_ior_gold_02.png"
                ]
            }
        },
        {
            "id": "11",
            "url": "https:\/\/balyberdin.com\/library\/all\/metronome\/",
            "title": "About Metronome & FPS to BPM Converter",
            "content_html": "<p>As a 3D artist, I often need tools that simply don’t exist. So I started creating my own!<\/p>\n<p>When I work on animation without music, I need a rhythm. To find it, I usually search “metronome 120 BPM” on YouTube, download the click track, and use it. After doing this over 10 times, it started to feel clunky.<\/p>\n<p>So I decided to build my own metronome, since I needed it regularly and it was relatively simple to make:<br \/>\n💓 <a href=\"https:\/\/balyberdin.com\/tools\/metronome\/\">Metronome & FPS to BPM Converter<\/a><\/p>\n<div class=\"half-img\"><div class=\"e2-text-picture\">\n<a href=\"https:\/\/balyberdin.com\/tools\/metronome\/\" class=\"e2-text-picture-link\">\n<img src=\"https:\/\/balyberdin.com\/library\/pictures\/metronome_04_min.png\" width=\"1498\" height=\"1154\" alt=\"metronome for animators and fps to bpm converter\" \/>\n<\/a><\/div>\n<\/div><p>Of course, lots of web metronomes already exist. But I built mine specifically for animation:<\/p>\n<ul>\n<li>Wide BPM range: Generate click tracks from 30 to 300 BPM<\/li>\n<li>One-click download: Get a 1-minute WAV file with your chosen BPM instantly<\/li>\n<li>FPS to BPM converter: Input your frame rate and get BPMs that align perfectly. For example, at 30 FPS, 120 BPM gives you a beat every 15 frames<\/li>\n<li>Frame-perfect timing: Beats begin exactly at frame 0, not a random frame like many YouTube videos<\/li>\n<\/ul>\n<p>One less workaround in my workflow, and hopefully yours too. I’ll keep building tools for problems that bug me enough to fix and sharing them to help others.<\/p>\n",
            "date_published": "2025-06-10T23:39:04+02:00",
            "date_modified": "2025-07-06T15:24:12+02:00",
            "tags": [
                "tools"
            ],
            "image": "https:\/\/balyberdin.com\/library\/pictures\/metronome_04_min.png",
            "_date_published_rfc2822": "Tue, 10 Jun 2025 23:39:04 +0200",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "11",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/balyberdin.com\/library\/pictures\/metronome_04_min.png"
                ]
            }
        }
    ],
    "_e2_version": 4134,
    "_e2_ua_string": "Aegea 11.3 (v4134)"
}