|
|
@ -3098,10 +3098,13 @@ void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float siz |
|
|
|
// Draw a billboard (part of a texture defined by a rectangle) |
|
|
|
void DrawBillboardRec(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Color tint) |
|
|
|
{ |
|
|
|
DrawBillboardPro(camera, texture, source, position, size, Vector2Zero(), 0.0f, tint); |
|
|
|
// NOTE: Billboard locked on axis-Y |
|
|
|
Vector3 up = { 0.0f, 1.0f, 0.0f }; |
|
|
|
|
|
|
|
DrawBillboardPro(camera, texture, source, position, up, size, Vector2Zero(), 0.0f, tint); |
|
|
|
} |
|
|
|
|
|
|
|
void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Vector2 origin, float rotation, Color tint) |
|
|
|
void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector3 up, Vector2 size, Vector2 origin, float rotation, Color tint) |
|
|
|
{ |
|
|
|
// NOTE: Billboard size will maintain source rectangle aspect ratio, size will represent billboard width |
|
|
|
Vector2 sizeRatio = { size.y, size.x*(float)source.height/source.width }; |
|
|
@ -3111,9 +3114,6 @@ void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source, Vector |
|
|
|
Vector3 right = { matView.m0, matView.m4, matView.m8 }; |
|
|
|
//Vector3 up = { matView.m1, matView.m5, matView.m9 }; |
|
|
|
|
|
|
|
// NOTE: Billboard locked on axis-Y |
|
|
|
Vector3 up = { 0.0f, 1.0f, 0.0f }; |
|
|
|
|
|
|
|
Vector3 rightScaled = Vector3Scale(right, sizeRatio.x/2); |
|
|
|
Vector3 upScaled = Vector3Scale(up, sizeRatio.y/2); |
|
|
|
|
|
|
|