Skip to main content
GameDev.net gamedev.net
🔒 Locked

Detecting Billboards

Started by Medo Mex May 8, 2013 at 10:17 PM 8 replies 2k views
Original Post
Medo Mex
Medo Mex

When the player shoot, I draw a bullet impact billboard, sometimes the player shoot at the same target multiple times, I don't want to place multiple billboards over each others.

How do I detect if a billboard already exists, so I only draw it if no billboards exists on the hit point?


D3DXVECTOR3 triangleP0, triangleP1, triangleP2; // Intersected triangle
D3DXVECTOR3 pHitPoint; // The hit point

// --> I want to use if () statement to check if a billboard already exists here...

// Code to draw billboard here...
ankhd
ankhd
You would need to keep track of the hit spots on each object
Medo Mex
Medo Mex

@ankhd: The player could shoot at: 2.0f, 1.8f, 1.0f

Then shoot at: 2.0f, 1.4f, 1.0f

Notice, it's not the same hit spot but I shouldn't be drawing the billboard since it will still appear over another one.

See the sceenshot, two billboards appears over each others, I want to AVOID that:

[attachment=15634:bboard1.png]

[attachment=15635:bboard.png]

ankhd
ankhd

they both look ok. use a radius as well

Medo Mex
Medo Mex

They don't look ok, take a look at the following screenshot:

[attachment=15638:bboard2.png]

I want to avoid that.

belfegor
belfegor

You could calculate the distance between position of "billboard" that you want to place against position of each existing "billboards" and if it is smaller then some value do not add it to the world. Hint: D3DXVec3LengthSq

Medo Mex
Medo Mex

How do I get the position of the billboard if I have the position of the vertices v0, v1, v2. v3?

unbird
unbird

The average. Though, you probably had the quad created from some center point, which you could use as well.

BornToCode
BornToCode

use the average position of all 4 vertices as your position

Medo Mex
Medo Mex

In some games, I notice they place bullet impact billboards over each others, though they still look realistic.

In my case, If I draw multiple billboard over each others, they don't look realistic.

Do I only have to change the texture to another one that can appear realistic when placed over each others? Maybe there are some techniques like resizing existing billboard before drawing another one over it?

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.