NormalMap Generator Online

Overview

NormalMap-Online

NormalMap Generator Online

A free tool to create normal maps.

You may use all normal maps you create here as you see fit. They are yours and will not be saved anywhere. The scripts are running on your machine only.

Please, as I have very limited time on this project, contribute via pull requests if you are able to.

Issues
  • Proposal for normal maps from pictures

    Proposal for normal maps from pictures

    There is a way to make normal maps from 4 pictures in photoshop where the light shines from different directions each time.

    Step 1: Basically you take all images and grayscale them. Then you have the grayscaled images that are lighted from above, from the left, from below and lighted from the right.

    Step 2: Create an image where the red channel is the light from the left and the green channel the light from above. (We name this image A here)

    Step 3: rgb = (1 - rgb) * 0.5; (In the tutorial they use something more complex but this gets very near to those results)

    Step 4: Create an image where the red channel is the light from the right and the green channel is the light from below. (We name this image B)

    Step 5: rgb = rgb * 0.5 + 0.5 (Same applies here)

    Step 6:

    if(B.r <= 0.5)
        result.r = (2 * B.r * A.r);
    else
        result.r = 1 - ((1 - (2 * (B.r - 0.5))) * (1 - A.r));
    

    Now repeat this for each channel except alpha.

    This blending method is called "Overlay" in Photoshop or "Hard light" in Gimp. A is basically the base and B is the mask.

    more details here: https://www.dropbox.com/s/ez2xhir23kkg6c9/Pixel%20blend%20mode%20algorithms.pdf?dl=0

    (Note that I modified the algorithm to use a range from 0 to 1 instead of 0 to 255 or 256. This also reduces the / 256 to / 1 or basically nothing)

    Step 7: Fill the blue channel with some value. A lighter blue will yield a smoother normal map. So let the user decide on this value. Best would be to start with 0.5

    Further details can be found here: http://www.zarria.net/nrmphoto/nrmphoto.html

    opened by WebFreak001 3
  • Possible Size Limit

    Possible Size Limit

    Hello Christian. I was trying to upload an 8192x8192 image to produce map, but I could only get the bottom left corner part. After I resized the original image to 4096x4096, everything works fine. I don't know if it is an known issue/limitation. And thanks for your great work.

    enhancement 
    opened by Neur1n 2
  • Please add an open source license

    Please add an open source license

    Until a license is added all the code in this repository is considered copyrighted. Something like https://choosealicense.com/ can be used to determine which license to use for this project. I would recommend the MIT license.

    opened by ghost 1
  • Zoom or magnify Preview

    Zoom or magnify Preview

    A zoombar or magnify for the 3d preview. On a 512 x 512 texture with my browser at fullscreen it's hard to see what's going on with something like a brick texture etc.

    opened by cpetry 0
  • Question about the displacement and specular functions.

    Question about the displacement and specular functions.

    Hi there!

    I just wanted to know the algorithm you've used in the displacement and specular functions. I want to translate into python, so I don't know much about js.

    For both functions you transform to grayscale using this function: v = 0.2126*r + 0.7152*g + 0.0722*b

    For the displacement map I see the this.contrastImage function but when I try to use console log inside it, it does not show anything. Can you help me clear how the displacement and the specular function works pixel-wise? Thank you.

    opened by AeroDEmi 1
  • batch doesnt work at all

    batch doesnt work at all

    batch downloading multiple textures just downloads the same 5 maps from the sample image. please fix

    also, add autonaming support. i just want to keep the same name the file already had

    Thanks <3 edit: Version 96.0.4664.93 (Official Build) (64-bit)

    opened by Luke-L 0
  • Support for Roughness Maps

    Support for Roughness Maps

    Would it be possible to add support for Roughness maps? I have frequently used this tool over the past few years, but lately I have been doing more things with PBR workflows, so I was wondering if it would be possible to add an option for generating roughness maps, since the specular maps are not compatible with how roughness works.

    enhancement help wanted 
    opened by zauberparacelsus 0
  • NormalMap Online upload issue

    NormalMap Online upload issue

    Hello, I took NormalMap Online for a test drive and discovered a glitch within Upload Pictures mode, all tiles function except the tile for bottom lit imagery. I tried uploading various images to that tile, it's related to the file, and I tried on different computers, not related to browser or PC. Thanks if someone can troubleshoot, contacted Christian Petry, who is presently a busy guy at home with a second child on the way ;^)

    bug help wanted 
    opened by benjyvc 0
  • Download Handler

    Download Handler

    what file handles downloads for batch mode, im trying to make it automatically generate minecraft normals for me, but i want thh files to be named with the format filename_n.png, filename_s.png, for normal and specular maps.

    Edit: i want to modify this so i can do this for all future releases of the game, if you are wondering i am making the default textures have maps for 3d-ness, that is all.

    enhancement 
    opened by Vortetty 0
This repo contains solutions to coding questions available online on coding platforms like - Codeforces, Codechef, URI Online Judge, and Hackerrank.

CPP_Soln This repo contains solutions to coding questions available online on coding platforms like - Codeforces, Codechef, URI Online Judge , LeetCod

Rijul Jain 3 Nov 1, 2021
Emulator for EvE Online Crucible expansion

EVEmu - An EVE Online Emulator Introduction EVEmu is a work-in-progress server emulator for the space MMO EVE Online. This is an educational project.

EvEmu Project 52 Aug 11, 2022
A fork of Wraith Cyborg, the Call of Duty: Online Asset Exporter

NOTE: No support is provided for this, it was updated for a friend who works on a CoD OL Mod and it working for him was all that mattered, it is provi

Philip 6 Jan 26, 2022
🎮 Plants vs. Zombies multiplayer battle, developed via reverse engineering, inline hook and dynamic-link library injection. Two online players defend and attack as the plant side and zombie side respectively.

Plants vs. Zombies Online Battle This project has two original repositories: https://github.com/czs108/Plants-vs.-Zombies-Online-Battle https://github

Liugw 71 Oct 14, 2021
A simple Z-Machine implementation in a single C file. Now with online multiplayer! :)

This is an implementation of Infocom's Z-Machine. The Z-Machine is a virtual machine that's something like a high-level CPU. To keep their games portable and easier to write, Infocom's games all use this fake processor and ship with a platform-specific Z-Machine "emulator" ... so a game could run wherever someone had implemented the Z-Machine.

Ryan C. Gordon 83 May 13, 2022
Minimal-ish implementation of Unreal Online Subsystem + ImGui UI

Minimal-ish implementation of Unreal Online Subsystem + ImGui UI

Brace Yourself Games 4 Mar 14, 2022
Online multi-agent trajectory planner using linear safe corridor (LSC)

lsc_planner This package presents an efficient multi-agent trajectory planning algorithm which generates safe trajectories in obstacle-dense environme

Jungwon Park 24 Aug 1, 2022
GTA Online survival missions in Single Player mode

SurvivalsModCPPVersion You liked the survival missions from GTA Online? Well, me too. This mod aims to recreate the same gamemode in Single Player mod

null 1 Nov 23, 2021
A customizable hardware prefetching framework using online reinforcement learning as described in the MICRO 2021 paper by Bera and Kanellopoulos et al.

A Customizable Hardware Prefetching Framework Using Online Reinforcement Learning Table of Contents What is Pythia? About the Framework Prerequisites

SAFARI Research Group at ETH Zurich and Carnegie Mellon University 42 Aug 4, 2022
This is a C plus plus coding template for Compitative programming. This template is very optimized for the Online Judgment

C-plusplus-compitative-Programming-Template Tech We Used C++ Features Easy to compile Easy debug facility Analysised and optimized base template Steps

Alan Binu 15 Jan 27, 2022
A simple tool used to upgrade things quicker in the online game Rust.

ex0 Rust Tool ??️ What is this? ⚡ This is a simple script with multiple tools such as a code enterer and a auto upgrade feature! ??️ Features ⚡ Any se

Alfie 3 Jan 1, 2022
PoC that fixes two GTA Online bugs and drastically improves load times for CPU-bound systems

Project status Officially fixed by R* 2021-03-16 :) PoC that fixes two GTA Online bugs and drastically improves load times for CPU-bound systems All a

null 2.8k Jul 29, 2022
Hidden Eye is an all in one tool that can be used to perform a variety of online attacks on user accounts

Hidden Eye is an all in one tool that can be used to perform a variety of online attacks on user accounts. It’s well loaded, therefore it can be used as keylogger (keystroke logging), phishing tool, information collector, social engineering tool, etc.

Muhammad Qazi 0 Jun 24, 2022
Experimental Worms Armageddon WormKit module that implements real-time online multiplayer for racing schemes

wkRealTime v.0.0.4d Experimental Worms Armageddon WormKit module that implements real-time online multiplayer for racing schemes. Installation Place w

null 15 Jul 12, 2022
DigiMahal is the First Project of Our Team in Sharif University of Technology for Basics of Programming That in this Code we Implemented an Online Shop like DigiKala

DigiMahal is the First Project of Our Team in Sharif University of Technology for Basics of Programming That in this Code we Implemented an Online Shop like DigiKala.

mhlatifi 3 Jul 23, 2022
This is our take on the digitalisation of the board game "b00le0", where you can play versus our AI, or against one of your friends in an online match.

This is our take on the digitalisation of the board game "b00le0", where you can play versus our AI, or against one of your friends in an online match.

valko purzalko 22 Jul 3, 2022
Single-header, ranges-compatible generator type built on C++20 coroutines

generator Single-header, ranges-compatible generator type built with C++20 coroutines. A generator allows implementing sequence producers which are te

Sy Brand 29 Aug 10, 2022
Run-time program generator embedded in C++

Run-time program generator embedded in C++

Z Guan 25 Aug 5, 2022
GPU 3D signed distance field generator, written with DirectX 11 compute shader

GPU SDF Generator GPU 3D signed distance field generator, written with DirectX 11 compute shader Building git clone --recursive https://github.com/Air

Z Guan 24 Jul 15, 2022