URI:
   DIR Return Create A Forum - Home
       ---------------------------------------------------------
       Hack Community
  HTML https://roshacks.createaforum.com
       ---------------------------------------------------------
       *****************************************************
   DIR Return to: Codes
       *****************************************************
       #Post#: 307--------------------------------------------------
       [C++] Draw Circle FOV
   DIR By: patchasaba
       Date: April 26, 2018, 10:55 am
       ---------------------------------------------------------
       --- Code ---
       IDirect3DPixelShader9* oldshapCir;
       
       void DrawCircle(IDirect3DDevice9* pDevice, int x, int y, float
       radius, D3DCOLOR color)
       {
       const DWORD D3D_FVF = D3DFVF_XYZRHW | D3DFVF_DIFFUSE |
       D3DFVF_TEX1;
       const int NUMPOINTS = 15;
       const float PI = (float)3.141592654f;
       
       D3DTLVERTEX Circle[NUMPOINTS + 1];
       float X, Y, Theta, WedgeAngle;
       WedgeAngle = (float)((2 * PI) / NUMPOINTS);
       
       for (int i = 0; i <= NUMPOINTS; i++)
       {
       Theta = i * WedgeAngle;
       X = (float)(x + (radius)* cos(Theta));
       Y = (float)(y - (radius)* sin(Theta));
       Circle[i] = CreateD3DTLVERTEX(X, Y, 0.0f, 1.0f, color, 0.0f,
       0.0f);
       }
       
       pDevice->SetFVF(D3D_FVF);
       
       pDevice->GetPixelShader(&oldshapCir);
       
       pDevice->SetTexture(0, NULL);
       pDevice->SetPixelShader(0);
       
       pDevice->SetRenderState(D3DRS_ZENABLE, FALSE);
       pDevice->SetRenderState(D3DRS_STENCILENABLE, FALSE);
       
       pDevice->SetRenderState(D3DRS_FOGENABLE, false);
       pDevice->SetRenderState(D3DRS_LIGHTING, false);
       pDevice->SetRenderState(D3DRS_ALPHATESTENABLE, true);
       pDevice->SetRenderState(D3DRS_ALPHABLENDENABLE, true);
       pDevice->SetRenderState(D3DRS_ALPHAFUNC,
       D3DCMP_GREATEREQUAL);
       pDevice->SetRenderState(D3DRS_DESTBLEND,
       D3DBLEND_INVSRCALPHA);
       
       
       pDevice->DrawPrimitiveUP(D3DPT_LINESTRIP, NUMPOINTS,
       &Circle[0], sizeof(Circle[0]));
       
       pDevice->SetRenderState(D3DRS_ZENABLE, TRUE);
       pDevice->SetRenderState(D3DRS_STENCILENABLE, TRUE);
       
       pDevice->SetPixelShader(oldshapCir);
       }
       --- End Code ---
       Use :
       --- Code ---
       float aimfov = 25.f;
       float radiusx = aimfov * (CenterScreenX / 100);
       float radiusy = aimfov * (CenterScreenY / 100);
       
       float point = (radiusx + radiusy) / 2;
       DrawCircle(pDevice, CenterScreenX, CenterScreenY, point,
       YELLOW);
       
       --- End Code ---
       #Post#: 318--------------------------------------------------
       Re: [C++] Draw Circle FOV
   DIR By: GreenXpqser
       Date: April 27, 2018, 5:41 pm
       ---------------------------------------------------------
       [CODE]
       struct D3DTLVERTEX
       {
       float fX;
       float fY;
       float fZ;
       float fRHW;
       D3DCOLOR Color;
       float fU;
       float fV;
       };
       D3DTLVERTEX CreateD3DTLVERTEX (float X, float Y, float Z, float
       RHW, D3DCOLOR color, float U, float V)
       {
       D3DTLVERTEX v;
       v.fX = X;
       v.fY = Y;
       v.fZ = Z;
       v.fRHW = RHW;
       v.Color = color;
       v.fU = U;
       v.fV = V;
       return v;
       }
       [/CODE]
       #Post#: 341--------------------------------------------------
       Re: [C++] Draw Circle FOV
   DIR By: Mrcumi
       Date: April 29, 2018, 6:21 am
       ---------------------------------------------------------
       TQ  ;D :-*
       *****************************************************
       Page 1 of 1