123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152 |
- <!DOCTYPE html>
- <html lang="pt-br">
- <head>
- <meta charset="utf-8" />
- <base href="../../../" />
- <script src="page.js"></script>
- <link type="text/css" rel="stylesheet" href="page.css" />
- </head>
- <body>
- <h1>Constantes de Material</h1>
- <p class="desc">
- Essas constantes definem propriedades comuns a todos os tipos de materiais,
- com exceção das Operações de Combinação de Texturas que se aplicam apenas a [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] e [page:MeshPhongMaterial.combine MeshPhongMaterial].<br />
- </p>
- <h2>Lado (Side)</h2>
- <code>
- THREE.FrontSide
- THREE.BackSide
- THREE.DoubleSide
- </code>
- <p>
- Define qual lado das faces será renderizado - frente, verso ou ambos.
- O padrão é [page:Constant FrontSide].
- </p>
- <h2>Modo de Mesclagem (Blending Mode)</h2>
- <code>
- THREE.NoBlending
- THREE.NormalBlending
- THREE.AdditiveBlending
- THREE.SubtractiveBlending
- THREE.MultiplyBlending
- THREE.CustomBlending
- </code>
- <p>
- Eles controlam as equações de mesclagem de origem e destino para RGB e Alpha do material enviadas ao WebGLRenderer para uso pelo WebGL.<br />
- [page:Constant NormalBlending] é o padrão.<br />
- Note que [page:Constant CustomBlending] deve ser definido para usar Equações de [page:CustomBlendingEquation Mesclagem Personalizadas].<br />
- Veja os exemplos [example:webgl_materials_blending materials / blending].<br />
- </p>
- <h2>Modo de Profundidade (Depth Mode)</h2>
- <code>
- THREE.NeverDepth
- THREE.AlwaysDepth
- THREE.EqualDepth
- THREE.LessDepth
- THREE.LessEqualDepth
- THREE.GreaterEqualDepth
- THREE.GreaterDepth
- THREE.NotEqualDepth
- </code>
- <p>
- Define qual função de profundidade o material usa para comparar a profundidade Z dos pixels de entrada com o valor atual do buffer de profundidade Z. Se o resultado da comparação for verdadeiro, o pixel será desenhado.<br />
- [page:Materials NeverDepth] nunca retornará true.<br />
- [page:Materials AlwaysDepth] sempre vai retornar true.<br />
- [page:Materials EqualDepth] retornará true se a profundidade Z do pixel de entrada for igual à profundidade Z do buffer atual.<br />
- [page:Materials LessDepth] retornará true se a profundidade Z do pixel de entrada for menor que a profundidade Z do buffer atual.<br />
- [page:Materials LessEqualDepth] é o padrão e retornará true se a profundidade Z do pixel de entrada for menor ou igual à profundidade Z do buffer atual.<br />
- [page:Materials GreaterEqualDepth] retornará true se a profundidade Z do pixel de entrada for maior ou igual à profundidade Z do buffer atual.<br />
- [page:Materials GreaterDepth] retornará true se a profundidade Z do pixel de entrada for maior que a profundidade Z do buffer atual.<br />
- [page:Materials NotEqualDepth] retornará true se a profundidade Z do pixel de entrada não for igual à profundidade Z do buffer atual.<br />
- </p>
- <h2>Operações de Combinação de Texturas</h2>
- <code>
- THREE.MultiplyOperation
- THREE.MixOperation
- THREE.AddOperation
- </code>
- <p>
- Definem como o resultado da cor da superfície é combinado com o mapa do ambiente (se presente), por [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] e [page:MeshPhongMaterial.combine MeshPhongMaterial]. <br />
- [page:Constant MultiplyOperation] é o padrão e multiplica a cor do mapa de ambiente pela cor da superfície.<br />
- [page:Constant MixOperation] usa refletividade para misturar as duas cores.<br />
- [page:Constant AddOperation] adiciona as duas cores.
- </p>
- <h2>Funções de Estêncil (Stencil Functions)</h2>
- <code>
- THREE.NeverStencilFunc
- THREE.LessStencilFunc
- THREE.EqualStencilFunc
- THREE.LessEqualStencilFunc
- THREE.GreaterStencilFunc
- THREE.NotEqualStencilFunc
- THREE.GreaterEqualStencilFunc
- THREE.AlwaysStencilFunc
- </code>
- <p>
- Define qual função de estêncil o material usa para determinar se deve ou não realizar uma operação de estêncil.<br />
- [page:Materials NeverStencilFunc] nunca retornará true.<br />
- [page:Materials LessStencilFunc] retornará true se o valor de referência do estêncil for menor que o valor do estêncil atual.<br />
- [page:Materials EqualStencilFunc] retornará true se o valor de referência do estêncil for igual ao valor atual do estêncil.<br />
- [page:Materials LessEqualStencilFunc] retornará true se o valor de referência do estêncil for menor ou igual ao valor do estêncil atual.<br />
- [page:Materials GreaterStencilFunc] retornará true se o valor de referência de estêncil for maior que o valor de estêncil atual.<br />
- [page:Materials NotEqualStencilFunc] retornará true se o valor de referência do estêncil não for igual ao valor do estêncil atual.<br />
- [page:Materials GreaterEqualStencilFunc] retornará true se o valor de referência do estêncil for maior ou igual ao valor do estêncil atual.<br />
- [page:Materials AlwaysStencilFunc] sempre retornará true.<br />
- </p>
- <h2>Operações de Estêncil (Stencil Operations)</h2>
- <code>
- THREE.ZeroStencilOp
- THREE.KeepStencilOp
- THREE.ReplaceStencilOp
- THREE.IncrementStencilOp
- THREE.DecrementStencilOp
- THREE.IncrementWrapStencilOp
- THREE.DecrementWrapStencilOp
- THREE.InvertStencilOp
- </code>
- <p>
- Define qual operação de estêncil o material executará no pixel de buffer de estêncil se a função de estêncil fornecida for aprovada.<br />
- [page:Materials ZeroStencilOp] definirá o valor do estêncil para 0.<br />
- [page:Materials KeepStencilOp] não alterará o valor atual do estêncil.<br />
- [page:Materials ReplaceStencilOp] substituirá o valor de estêncil pelo valor de referência do estêncil especificado.<br />
- [page:Materials IncrementStencilOp] irá incrementar o valor atual do estêncil em `1`.<br />
- [page:Materials DecrementStencilOp] diminuirá o valor atual do estêncil em `1`.<br />
- [page:Materials IncrementWrapStencilOp] irá incrementar o valor atual do estêncil em `1`. Se o valor aumentar além de `255`, ele será definido como `0`.<br />
- [page:Materials DecrementWrapStencilOp] irá incrementar o valor atual do estêncil em `1`. Se o valor diminuir abaixo de `0`, será definido como `255`.<br />
- [page:Materials InvertStencilOp] executará uma inversão bit a bit do valor de estêncil atual.<br />
- </p>
- <h2>Tipo de mapa normal</h2>
- <code>
- THREE.TangentSpaceNormalMap
- THREE.ObjectSpaceNormalMap
- </code>
- <p>
- Define o tipo do mapa normal
- Para TangentSpaceNormalMap, as informações são relativas à superfície subjacente.
- Para ObjectSpaceNormalMap, as informações são relativas à orientação do objeto.
- O padrão é [page:Constant TangentSpaceNormalMap].
- </p>
- <h2>Versão GLSL</h2>
- <code>
- THREE.GLSL1
- THREE.GLSL3
- </code>
- <h2>Source</h2>
- <p>
- [link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
- </p>
- </body>
- </html>
|