mirror of
https://github.com/nzp-team/fteqw.git
synced 2024-11-29 07:02:12 +00:00
small fixups for the d3d8 renderer, to give eukara the conflicts that he asked for. disabled by default, because I cba to deal with the dxsdk headers.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5075 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
afa9fce336
commit
f80cafc6fa
5 changed files with 14 additions and 4 deletions
|
@ -572,6 +572,10 @@ GLQUAKE_OBJS = \
|
||||||
$(VKQUAKE_OBJS)
|
$(VKQUAKE_OBJS)
|
||||||
|
|
||||||
D3DQUAKE_OBJS = \
|
D3DQUAKE_OBJS = \
|
||||||
|
d3d8_backend.o \
|
||||||
|
d3d8_image.o \
|
||||||
|
d3d8_shader.o \
|
||||||
|
vid_d3d8.o \
|
||||||
d3d_backend.o \
|
d3d_backend.o \
|
||||||
d3d_image.o \
|
d3d_image.o \
|
||||||
d3d_shader.o \
|
d3d_shader.o \
|
||||||
|
|
|
@ -344,7 +344,7 @@ typedef union vboarray_s
|
||||||
void *addr;
|
void *addr;
|
||||||
} gl;
|
} gl;
|
||||||
#endif
|
#endif
|
||||||
#if defined(D3D9QUAKE) || defined(D3D11QUAKE)
|
#if defined(D3D8QUAKE) || defined(D3D9QUAKE) || defined(D3D11QUAKE)
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
void *buff;
|
void *buff;
|
||||||
|
|
|
@ -1,6 +1,12 @@
|
||||||
#include "quakedef.h"
|
#include "quakedef.h"
|
||||||
|
|
||||||
#if defined(AVAIL_WASAPI) && !defined(SERVERONLY)
|
#if defined(AVAIL_WASAPI) && !defined(SERVERONLY)
|
||||||
|
//wasapi is nice in that you can use it to bypass the windows audio mixer. hurrah for exclusive audio.
|
||||||
|
//this should give slightly lower latency audio.
|
||||||
|
//its otherwise not that interesting.
|
||||||
|
|
||||||
|
//side note: wasapi does provide proper notifications for when a sound device is enabled/disabled, which is useful even if you're using directsound instead.
|
||||||
|
//this means that we can finally restart the audio if someone plugs in a headset.
|
||||||
#include "winquake.h"
|
#include "winquake.h"
|
||||||
|
|
||||||
#include <audioclient.h>
|
#include <audioclient.h>
|
||||||
|
|
|
@ -415,6 +415,7 @@ void D3D8BE_Reset(qboolean before)
|
||||||
int i;
|
int i;
|
||||||
if (before)
|
if (before)
|
||||||
{
|
{
|
||||||
|
IDirect3DDevice8_SetVertexShader(pD3DDev8, 0);
|
||||||
IDirect3DDevice8_SetStreamSource(pD3DDev8, 0, NULL, 0);
|
IDirect3DDevice8_SetStreamSource(pD3DDev8, 0, NULL, 0);
|
||||||
IDirect3DDevice8_SetIndices(pD3DDev8, NULL, 0);
|
IDirect3DDevice8_SetIndices(pD3DDev8, NULL, 0);
|
||||||
|
|
||||||
|
@ -1482,8 +1483,8 @@ static qboolean BE_DrawMeshChain_SetupPass(shaderpass_t *pass, unsigned int vert
|
||||||
/*all meshes in a chain must have the same features*/
|
/*all meshes in a chain must have the same features*/
|
||||||
vdec = D3DFVF_QVBO;
|
vdec = D3DFVF_QVBO;
|
||||||
|
|
||||||
*vertfirst = shaderstate.dynvbo_offs/sizeof(*map);
|
|
||||||
allocvertexbuffer(shaderstate.dynvbo_buff, shaderstate.dynvbo_size, &shaderstate.dynvbo_offs, &map, vertcount*sizeof(*map));
|
allocvertexbuffer(shaderstate.dynvbo_buff, shaderstate.dynvbo_size, &shaderstate.dynvbo_offs, &map, vertcount*sizeof(*map));
|
||||||
|
*vertfirst = (shaderstate.dynvbo_offs - vertcount*sizeof(*map))/sizeof(*map);
|
||||||
|
|
||||||
|
|
||||||
for (mno = 0; mno < shaderstate.nummeshes; mno++)
|
for (mno = 0; mno < shaderstate.nummeshes; mno++)
|
||||||
|
@ -1518,7 +1519,6 @@ static qboolean BE_DrawMeshChain_SetupPass(shaderpass_t *pass, unsigned int vert
|
||||||
|
|
||||||
d3dcheck(IDirect3DDevice8_SetStreamSource(pD3DDev8, 0, shaderstate.dynvbo_buff, sizeof(vbovdata_t)));
|
d3dcheck(IDirect3DDevice8_SetStreamSource(pD3DDev8, 0, shaderstate.dynvbo_buff, sizeof(vbovdata_t)));
|
||||||
d3dcheck(IDirect3DDevice8_SetIndices(pD3DDev8, shaderstate.dynidx_buff, *vertfirst)); //base vertex is considered part of ebo state in d3d8, I guess
|
d3dcheck(IDirect3DDevice8_SetIndices(pD3DDev8, shaderstate.dynidx_buff, *vertfirst)); //base vertex is considered part of ebo state in d3d8, I guess
|
||||||
// *vertfirst = 0;
|
|
||||||
|
|
||||||
/*we only use one colour, generated from the first pass*/
|
/*we only use one colour, generated from the first pass*/
|
||||||
//vdec |= BE_GenerateColourMods(vertcount, pass);
|
//vdec |= BE_GenerateColourMods(vertcount, pass);
|
||||||
|
|
|
@ -796,7 +796,7 @@ static qboolean D3D8_VID_Init(rendererstate_t *info, unsigned char *palette)
|
||||||
mouseactive = false;
|
mouseactive = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
D3D8BE_Reset(false);
|
// D3D8BE_Reset(false);
|
||||||
|
|
||||||
//FIXME: old hardware is not guarenteed to support hardware cursors.
|
//FIXME: old hardware is not guarenteed to support hardware cursors.
|
||||||
//this should not be a problem on dx9+ hardware, but might on earlier stuff.
|
//this should not be a problem on dx9+ hardware, but might on earlier stuff.
|
||||||
|
|
Loading…
Reference in a new issue