EDIT, Another, similar but shorter vid on his "Sam Kite" channel released also today after the first one:Specular translucent -dot (light dir, eyedir) - I forgot to put it.
compare default billboard tree
M-77SpeedTree 's normal has scalar value . Do not *2 - 1
Even if he do not update his "Patreon" etc. he work on and shows it on "YT" or his blog (most here in lasts months). Most important that he goes on with work.Who is problem.
2017.07.20 Unity3d DrawMeshInstancedIndirect Test1500 vertex 3000tri geometry x 5000 drawinstanced indirect
This looks good.1500 vertices. 5000,
They can use different Texture and different displcament.
It mean almost 5000 different people drawed once.
Now jump-up-climbing is posible. Like in the old "The Amazing Spiderman" Game for the Game Boy, now here in 3-d real world. Accelerated running was included before already by him. He will be smart to mix old school arcade elements into his game project. I will work out a game idea script and send it to him when i got time, i have too much work now to do. He can mix it with his ideas etc. I allready collected some pics for that to illustrate. A free roaming around but with simple Mission Quests like in "The Terminator-Future Shock" (MS-DOS, 3-d Game) witch you have to complete to progress would be nice to play.Mutli Jumping
He also is posting tutorials on his Blog again, and reactivated older articles:Now I think I know a lot about Unity, but I always have something I can not think of.
I baked an enlighten real time light map in the room with translucent glass windows.
However, despite the presence of windows, the room was completely black.
If you want a light effect, be sure to disable the window and bake it when you are lighting the lightmap.
And after the lightmap is complete, let's enable the window again.
PLEASE NO MONEY/PATREON DONATIONS FOR NOW! (See lower Comment on the "Youtube" Video in my previous Post) The Creator wish no Support for now. Because he can not guarntee a release.OMG , Unity Alebic does not support skinning.
Today new video about "Alembic" not working with "Skinning" (Nice Side Effect, could use this for enemy/Barrels blow-up animation):
2017.07.28 Alembic
PLEASE NO MONEY/PATREON DONATIONS FOR NOW! (See lower Comment on the "Youtube" Video in my previous Post) The Creator wish no Support for now. Because he can not guarntee a release.
So he will go on later, now he just try out what "Unity" can do. And to show it for Folks to learn about it.
M-77
Yes something like the old stuff on "Game Boy" but nowdays in 3d, like "Doom" (MS-Dos) with simple missions/quest (not much work for this) and free run around so you can explore the worlds levels (much playtime with small effort). Some extras, maybe clothing system, collect money for this. Ahh, "Rockman" in my Country is called "Mega Man". I still got 1-4 for the NES. Played it also on GB, but was too hard.Games like Rockman were fun enough just to jump and dash. Nowadays, there must be something realistic, there must be a variety of techniques, and even games that automatically play me. I just wanted to make a game at the origin. A game that is not much needed except for jumps and dashes
M-77Non adult Version.
And some (Translate.Google) explanation what this is about on his blog, with the same videos like that on YOUTUBE:The problem has been bothering me for a long time.
M-77I do not think I can use it right now, but I've seen a list of less useful technologies.
Hashed Alpha Test
There is a feeling that the title can be used right away.
A7-wyman.pdf
You must be registered to see the links
Well, Nvidia, you're not just an alien, you're implanting an alien brain cell. The farther away you go, the alpha is going to be the alpha version of the last derivative map, the distant normal crushing of the distant map.
If the derivative map requires a process to convert the normal map to a derivative value. This really does not have to be cancer. So I tried and it really does. It's not perfect because I do not have aniso level part yet.
(VIDEO one here)
This disappears when the original alpha test goes away.
(VIDEO two here)
This hashed alpha test is gone and disappears. Sounds like a ...
Ps) It seems better to use ddy_coarse and ddx_coarse.
So this means that he go for real live work (he seems to be a Teacher for Programming in Korea) for now and paused his tryouts in "unity" engine?Now I think I should go to the money again for a while. Before I go, I put up one demo link.
And another on his Blog 2017.08.06 hashed alpha test:I must also go to work. Link to u viewb ... I added some buildings. Well, I think it's going to be a game if you add it like this. It is not so good to want to see the state of the building. It seems like a lot of hands.
It will stop for another month. I will always start again next time ..
And New playable demo!(2017.08.06)Yes, the hashed alpha test could also be used on the character's eyelashes. But ... no one would care. How important this is ...
2017.08.09 Dummy ShadowI think hashed alpha test is usful for Se SSRS.
And he is now working to made the Eyelashes look better, when zooming:Far Shadow for direction light is headace for openworld game developer.
This is simple fake shadow.
Very Small terrain copy geometry.
And Other Camera .
Copy depth and shadow to original frame buffer.
Picture direct Link, (maybe it is only visible from his blog):Eyelashes 2017.08.07. 21:32
![]()
A Uncle Ben's word is everywhere.
I do not see it anyway if I get distant, and the rough eyelashes are now awkward in any situation.
The reason why the left and right are the same is not the shader problem, but rather the wrong thing.
Now it's time to make eyelashes well.
Blog Post here:I told you before. Unity's color space option is an importer option. However, there are color space property options that are hidden as a separate option.
![]()
This is when the color space property is set to 0 or gamma.
![]()
1, that is, when it is aligned linearly. Ignore the stripes on the forehead. Well, why is it? In any case, this option appears to be exactly the opposite of what is in the image. Yo, trust your eyes.
Blog Post here:It was always fixed only by words
It was really fixed.
Well, we must now restore everything we used the wrong way. Let's take a look at the NPC foot that I left behind as the only code.
![]()
This time, it's real. It will be approximately version 5.6.3f1 of Unity.
Source:Ankle rigging script code
2017.08.19. 12:53
I did not name my ankle in my previous foot, naming my ankle as foot, and foot as ankle.
I basically make sure that the patterns are aligned and aligned even if the key data comes in any way.
Thus, the ankle joint was made into a double joint.
Designers will love it.
![]()
By default, LeftFoot is mapped to LeftFoot.
Therefore, the rotation value of the left foot of the hand keys will be included in the moCap data.
Then you can modify the LeftAnkle value accordingly.
Public class Rigging: MonoBehaviour {
****Protected Animator _animator;
****[HideInInspector]
****Public Animator animator {get {if (_animator == null) _animator = GetComponentInParent <Animator> (); Return _animator; }}
****Protected Dictionary <string, Transform> _bones = null;
****Public Dictionary <string, Transform> bones {
********Get {
************If (_bones == null)
************{
****************_bones = new Dictionary <string, Transform> ();
****************Transform [] trs = GetComponentsInChildren <Transform> ();
****************Foreach (Transform tr in)
****************{
********************If (tr.CompareTag ("Bone"))
********************{
************************If (! Bones.ContainsKey (tr.name))
************************{
****************************Bones.Add (tr.name, tr);
************************}
********************}
****************}
************}
************Return _bones;
********}
****}
}
There is no separation in the upper class, and the generic hash table is created with just the child transform.
****Void LegUpdate ()
****{
********Bones ["LeftAnkle"]. Rotation = Quaternion.LookRotation (bones ["LeftFoor"]. Forward, bones ["LeftLeg"].
****}
Well, you can do this.
It is important to just orient the pattern of LeftAnkle like that.
Sound is also easy.
If the Pics do not show up, go direct to his Blog-Post:Dexterity
Rendering a woman's face beautifully
2017.08.27. 17:53
Copy this URLYou must be registered to see the links
I told you a great deal,
In fact, eyes and lips are the points of a woman's face.
![]()
Let's look at the dying dynamo's face.
![]()
This happens when you put your eyelashes on.
It is not necessary to lengthen the eyelashes.
Long eyelashes in the mouth is actually long lasting because of the phenomenon that the alpha disappears when I say that the mouth is worn out last time.
Rather, let's use real polygons, or use this magic hashed alpha.
I just put on a very thin eyelash. The difference is clear.
But the problem is dynamism.
This texture is just a lambert.
Let's change this to standard or PBR.
![]()
Here comes the point. That is, it does not mean that you use only PBR.
You must hang the environment IBL. This will cause diffuse light in the eyeball under any circumstances.
Another point is that the pupil must break down .. and the pupil area and the corona area should give the gloss up. Raising the gloss means to reduce the roughness.
However, the point of the eye is also the highlight. It is better to pull the pupil part forward so that any angle can enter the surrounding light.
![]()
Then, like that cartoon, double highlights are inserted only for a reason.
If your lips can brighten your lips and turn red without light, you have a complete understanding of PBR.
If you can not do it backwards ...
Study again ..
![]()
Before............................................................After
![]()
쩝 In the end, what you can do with the default shader is that.
Well, I do not know why you did it.
The transparency of the Unity Stanza shader
Blend
Blend One OneMinusSrcAlpha
That's because it's pre-multiplied alpha.
As a result, if you do not fix the shader yourself, the coated specular effect does not work.
Anyway, even roughly rolling modeling seems to be plausible if you just put the coated specular around your eyes, lips and eyes.
Well, if you want to go to the extreme here, um ... you'll need extreme fact modeling.
So with every new Editor Version a Game Developer has do re-do his Work because of changed Processes, and than a possible game takes infite Time to finish?Dexterity
Remeshing
2017.08.30. 10:21
Copy this URLYou must be registered to see the links
I decided to create an open world game.
Troubleshoot terrain issues
Trees solve the problem
Next, I encountered a general building problem
There is no solution.
Let's think about the reason.
Once the tree is very simple
Each one of the trees -> The number of the local polygons in the area -> The wide area of the wood billboard -> Importer
In this way, it becomes LOD in 4 steps.
But the story of the building is different.
Once inside the building, the interior should come out.
If you stay away, the building itself has to be a lump.
The overlapping area should be gone
This is quite painful.
In other words, it can not be solved by general mesh reduction.
So it is remesh.
The graphical tool, like shrink, is similar and slightly different.
I'm creating a new mesh that covers the whole thing.
Well this is not convex.
![]()
Let's look at a simple example.
It is an old building with one block separated by material unit.
They all have 256 material
That is, there are now 256 pieces.
There is also a pretty neat interior and there is also a building roof.
But ... this is not a big burden on proximity.
![]()
Let's look at the other angles. It's because of all the different materials.
Will this polygon reduce the number of polygons?
I do not know.
I still do not have polygies anyway.
There is no line.
So how does this make LOD?
MATERIAL COMPLEX? That's what I do.
I can not get polygons in that form.
So coming out is remeshing.
![]()
This is the result of remeshing it through Simpligon.
You will almost feel how you have labeled it.
Of course it is not good but it is LOD
I do not see it like this.
![]()
I see this.
The important thing here is that we do not place material combines.
That is, texture baking is performed in this state.
And then create a new texture through the transfer render.
Currently, the remesh function can be used in Simplified MS version and instaLOD.
Through the first process, we created a height map with 2049x2049 details and a far distance.
Let's load this into the L3DT.
The world machine is useful when you create a circle.
L3DT is much more comfortable when you make terrain for real games.
It's cheap and there's a free version too.
The work order of L3DT is
Design map -> height map -> attribute map -> color map.........
M-77Dexterity
Shader change
2017.09.01. 19:17
Copy this URLYou must be registered to see the links
There is no bigger yet ...
It's subtly different in color.
There is no change in the code.
The possibility is that I have not seen it.
In other words....
There is something that affects post-processing.
We are checking the basic shader before entering the terrain.
It's better than White Day.
What do you believe in and refuse to help?
See much more on his Blog, interesting for game makers, he shows what is messed up in "Unity" and how to solve it.Unity Terrain Making Method
Creating Unity Terrain 7 Tessellation and Load and Bicubic Sampling
2017.09.03. 17:04
Copy this URLYou must be registered to see the links
Intermediate course skip ...
Tessellated
Adjusting the LOD with EdgeLength
Pick the Height map to Load instead of Sample.
Filtering with bicubic will do this.
It's easy.
The key to the shader code is
***int2 dim;
***_THeightMap.GetDimensions (dim.x, dim.y);
***float2 nuv = v.uv0 * dim;
***int2 fuv = floor (nuv);
***int2 cuv = ceil (nuv);
***float h1 = _THeightMap.Load (int3 (fuv.x, fuv.y, 0)) .r;
***float h2 = _THeightMap.Load (int3 (fuv.x, cuv.y, 0)) .r;
***float h3 = _THeightMap.Load (int3 (cuv.x, fuv.y, 0)) .r;
***float h4 = _THeightMap.Load (int3 (cuv.x, cuv.y, 0)) .r;
***float2 currentuv = frac (nuv);
****float hy1 = h1 * (1- currentuv.y) + h2 * (currentuv.y);
****float hy2 = h3 * (1- currentuv.y) + h4 * (currentuv.y);
****float hx = hy1 * (1- currentuv.x) + hy2 * (currentuv.x);
It will be like this.
as you see..
The normal is alive, and it is not broken or crushed.
The terrain does not change into a tangle, depending on the distance.
There are fewer loads and few DCs go up to 50 or more.
It's 64 square kilometers now.
If you raise this to make a third class 140 square kilometer, you will not get over 100.
Let's just take a break and do a splat now.
Splat is a Unity-like way to swallow the world nowadays.
It was a decade ago.
Let's use 3 methods.
M-77Unity Terrain Making Method
Apply Unity3d Derivative map
2017.09.03. 12:25
Copy this URLYou must be registered to see the links
Using a Derivative map
Global Normal was applied to Terrain.
As you can see, it works. I do not have a footprint on Normal even if I zoom in. Well this is called footprint. The term is also the most difficult ..
Once the principle is simple ...
// Calculate the surface normal using the uv-space gradient (dhdu, dhdv)
half3 CalculateSurfaceNormal (half3 position, half3 normal, half2 gradient, half2 uv)
Unity already has these functions in StandardShaderUtils.
You can put the world position in position, and the worldnormal in varyed normal. You can put uv in uv.
The only value we need is a gradient.
This value is the xy value of the derivative map. by the way..
You have to process that value slightly.
Of course this is the key.
This method is also used later in height map sampling.
Let's do it in class.
Huck said something strange
Change the height map to burn the derivative map.
I did not put the heightmap in the game.