Cómo utilizar el complemento Uniflow de Unity
Código C#
enumación pública EThumbnailFlippingAnimation
{
Izquierda,
Centrado),
Correcto,
Zoom
};
Podría haberme detenido allí, pero para maximizar el aprendizaje (no he escrito en un blog durante mucho tiempo). mucho tiempo), todavía lo comparto con todos.
La estructura de directorios del código fuente de Uniflow es muy simple. La siguiente es la descripción del rol de cada clase:
--ClickManager:MouseEventManager
-. -ClickEventManager.cs: activadores de eventos personalizados Si ha visto la UICamera de NGUI, sabrá que el script es esta función: ClickEventManager.cs: activadores de eventos personalizados. Esto es lo que hace el script: detecta el estado actual del mouse en Actualización y luego activa el evento a través de SendMessage:
Código C#
if( m_rFirstPressedCollider != rCollidedElement )
{
rCollidedElement.SendMessage( "OnHoverEvent", verdadero, SendMessageOptions.DontRequireReceiver
m _rPreviousHoveredCollider = rCollidedElement;
}
--IClickEventListener:Define dos tipos de escucha de eventos (funciones):
Código C#
interfaz pública IClickEventListener
{
void OnClickEvent ();
void OnHoverEvent( bool a_bIsHovered );
}
--UIEffect: efecto UI
--gkInterpolate.cs: define algunos Función de interpolación, si está interesado en la interpolación, puede hacer clic para ver más implementaciones de funciones de interpolación.
--UIEffectColor.cs: hereda de UIEffectTemplate y reproduce la función EffectUpdate, que se utiliza para implementar cambios de color y cambiar los valores de los parámetros de color del sombreador.
--UIEffectTemplate.cs: Clase de implementación de animación, similar a UITweener de NGUI.
--UIEffectTransformRelativeCoords.cs: Implementación de animación de escala, rotación y posición
--UIEffectTransformRelativeCoords.cs: Implementación de animación de escala, rotación y posición
- -UIEffectTransformRelativeCoords.cs: Implementación de animación de escala, rotación y posición.
cs: Implementación de animación de Escala, Rotación, Posición
--UIEffectTransformRelativeChoords.cs: Implementación de animación de Escala, Rotación, Posición --Uniflow: Implementación del navegador de imágenes
--UniflowGallery. : Clase de gestión de UniflowThumbnail, que define parámetros entre imágenes.
--UniflowThumbnail.cs: Implementa los cuatro efectos definidos por EThumbnailFlippingAnimation:
Código C#
// Animación/miniatura de giro.
// La animación se puede omitir si se ha invertido la miniatura. Si a_bForceEndOfAnimation se establece en verdadero, la animación se puede omitir
public void Flip( EThumbnailFlippingAnimation a_eFlippingAnimation, bool a_ bForceEndOfAnimation )
{
m_rUIEffectFlipping.Pause( )
m_rUIEffectColorFade.Pause( );
if( m_bIsZoomed == false )
{
switch( a_eFlippingAnimation )
{
case EThumbnailFlippingAnimation.finalEulerAnglesOffset = m_rParentGallery.leftFlippingRotation
m_rUIEffectFlipping.leftFlippingScale * Vector3.one; = m_rParentGallery.
m_rUIEffectColorFade.colorIn = m_rUIEffectColorFade.currentColor;
m_rUIEffectColorFade.colorOut = m_rParentGallery.ambientColor
}
break;
// Omita otras implementaciones, consulte el código para obtener más detalles
}
}
}
} p>
--UniflowUtils.cs: Clase de herramienta
--UniflowZoomBackground.cs Clase de implementación para efectos de imagen de fondo.
--Shaders: Shaders usados por imágenes, define variables
--shader_TransparentVertexLitOverlayP1.TransparentVertexLitOverlayP2.shader: