¡Cualquiera tiene alguna idea sobre cómo convertir ccc3 a ccc4 o incluso solo una macro! Actualmente estoy usando CCMotion streak y me requiere usar ccc4, pero no sé qué combinación hace qué color. ¡Por favor, cualquier ayuda sería apreciada! Gracias Cocos2d ¿Cómo usar CCC4?
Respuesta
de ccTypes.h
typedef struct _ccColor4B
{
GLubyte r;
GLubyte g;
GLubyte b;
GLubyte a;
} ccColor4B;
//! helper macro that creates an ccColor4B type
static inline ccColor4B
ccc4(const GLubyte r, const GLubyte g, const GLubyte b, const GLubyte o)
{
ccColor4B c = {r, g, b, o};
return c;
}
Para exampe:
ccColor4b myColor = ccc4(255, 0, 0, 255);
crea un color rojo sólido
nuevo desde ccTypes.h
/** Returns a ccColor4F from a ccColor3B. Alpha will be 1.
@since v0.99.1
*/
static inline ccColor4F ccc4FFromccc3B(ccColor3B c)
{
return (ccColor4F){c.r/255.f, c.g/255.f, c.b/255.f, 1.f};
}
Si no es suficiente para que escribas tu propio convertidor como el último o ne
EDIT:
Si tiene ccColor3B myColor3B
y que desea tener ccColor4F myColor4F
simplemente utilizar el convertidor:
myColor4F c = ccc4FFromccc3B(myColor3B);
Si usted quiere tener ccColor4B escribir su propio conversor:
static inline ccColor4B ccc4BFromccc3B(ccColor3B c)
{
return (ccColor4F){c.r, c.g, c.b, 255};
}
y úsala así:
ccColor4B c = ccc4BFromccc3B(myColor);
Para cualquier persona que tenga el mismo problema con CocosSharp (el Xamarin C# puerto de Cocos2D):
Para convertir un CCColor3B a un CCColor4F, se puede pasar en el CCColor3B como un argumento al constructor de CCColor4F. Por ejemplo:
var color = new CCColor4F (CCColor3B.Red);
CCColor4B no tiene un constructor con CCColor3B como argumento, por lo que tiene que pasar en los valores individuales para el rojo, verde y azul, de la siguiente manera:
var sourceColor = CCColor3B.Red;
var color = new CCColor4B (sourceColor.R. sourceColor.G, sourceColor.B);
me gusta crear métodos de extensión para encapsular lo anterior, de la siguiente manera:
public static class ColorExtensions
{
public static CCColor4F ToColor4F(this CCColor3B sourceColor)
{
return new CCColor4F (sourceColor);
}
public static CCColor4B ToColor4B(this CCColor3B sourceColor)
{
return new CCColor4B (sourceColor.R, sourceColor.G, sourceColor.B);
}
}
modo que lo pueda realizar conversiones utilizando la siguiente:
var bColor = CCColor3B.ToColor4B();
var fColor = CCColor3B.ToColor4F();
- 1. cómo aprender "Animaciones en COCOS2D"
- 2. cocos2d: Cómo configurar un temporizador
- 3. cocos2d convertToWorldSpace
- 4. Cocos2d Resources
- 5. Cocos2d install
- 6. iPhone: Proyecto Learning Cocos2D
- 7. UITextField Ejemplo en Cocos2d
- 8. Cocos2D-X Literatura
- 9. Integrando Cocos2D con UIKit
- 10. Light Stream en cocos2d
- 11. cocos2d y UINavigationController trouble
- 12. Diferencia entre cocos2d-android y cocos2d-android-1
- 13. ¿Cómo habilitar el toque múltiple en cocos2d?
- 14. Cómo dibujar un fondo rápido en cocos2d?
- 15. Cómo trazar una línea con Cocos2d-iPhone
- 16. ¿Cómo desinstalar las plantillas de Cocos2d?
- 17. ¿Cómo popScene con transiciones en cocos2d?
- 18. ¿Cómo rellenar la textura en cocos2d?
- 19. ¿Cómo cruzo la música en cocos2d?
- 20. Sistema de coordenadas Cocos2d
- 21. cocos2d-IOS - Gesto reconocedores
- 22. Detectar contacto Cocos2d-x
- 23. UIScrollView y Cocos2D
- 24. CCActions simultáneas Cocos2d
- 25. Cocos2d + Box2D o Chipmunk
- 26. Cocos2D y Leaderboard
- 27. ¿Cómo puedo usar la opción pitch, pan, gain de SimpleaudioEngine en cocos2d-x
- 28. detección de colisión en cocos2d
- 29. efecto de parada en cocos2d?
- 30. limitando un sprite en cocos2d
Hola, gracias por la publicación! ¿Crees que podrías explicarme cómo usar el código que has publicado? Gracias – iDeveloper
He editado la respuesta – Andrew
Bueno, lo siento muchísimo, pero aún no lo entiendo. Solo para explicarlo una vez más, básicamente estoy usando CCMotionStreak y me requiere usar ccc4 y quiero convertir mi color ccc3 en ccc4. Si es posible, ¿podría hacer un proyecto y publicar el código en línea? Solo un consejo. Intenté hacer esto: CCMotionStreak * streak = [CCMotionStreak streakWithFade: 2 minSeg: 0 image: @ "Stars.png" width: 32 length: 32 color: ccc4FFromccc3B (255,0,0)]; pero dio 3 errores! Gracias una vez más. – iDeveloper