Hi, this patch caused regression in TES: Oblivion, some objects like peoples are broken.
Mirek Slugen
H. Verbeet napsal(a):
Changelog:
- Rewrite shader_glsl_mov() to properly take the write mask into account
- in case of writing to an address register round the source, rather
than just dropping the fractional part
dlls/wined3d/glsl_shader.c | 33 ++++++++++++++++++++++++--------- 1 files changed, 24 insertions(+), 9 deletions(-)
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index 60f74c0..6579e6d 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -963,17 +963,32 @@ void shader_glsl_arith(SHADER_OPCODE_ARG* arg) {
/* Process the WINED3DSIO_MOV opcode using GLSL (dst = src) */ void shader_glsl_mov(SHADER_OPCODE_ARG* arg) {
- IWineD3DBaseShaderImpl* shader = (IWineD3DBaseShaderImpl*) arg->shader; SHADER_BUFFER* buffer = arg->buffer;
- char tmpLine[256];
- char dst_str[100], src0_str[100];
- char dst_reg[50], src0_reg[50];
- char dst_mask[6], src0_mask[6];
- char src0_str[100];
- char src0_reg[50];
- char src0_mask[6];
- DWORD write_mask;
- shader_glsl_add_dst_param(arg, arg->dst, 0, dst_reg, dst_mask, dst_str);
- shader_glsl_add_src_param_old(arg, arg->src[0], arg->src_addr[0], src0_reg, src0_mask, src0_str);
- shader_glsl_add_dst_old(arg->dst, dst_reg, dst_mask, tmpLine);
- shader_addline(buffer, "%s%s)%s;\n", tmpLine, src0_str, dst_mask);
- write_mask = shader_glsl_append_dst(buffer, arg);
- shader_glsl_add_src_param(arg, arg->src[0], arg->src_addr[0], write_mask, src0_reg, src0_mask, src0_str);
- /* In vs_1_1 WINED3DSIO_MOV can write to the adress register. In later
* shader versions WINED3DSIO_MOVA is used for this. */
- if ((WINED3DSHADER_VERSION_MAJOR(shader->baseShader.hex_version) == 1 &&
!shader_is_pshader_version(shader->baseShader.hex_version) &&
shader_get_regtype(arg->dst) == WINED3DSPR_ADDR) ||
arg->opcode->opcode == WINED3DSIO_MOVA) {
/* We need to *round* to the nearest int here. */
size_t mask_size = shader_glsl_get_write_mask_size(write_mask);
if (mask_size > 1) {
shader_addline(buffer, "ivec%d(floor(%s + vec%d(0.5))));\n", mask_size, src0_str, mask_size);
} else {
shader_addline(buffer, "int(floor(%s + 0.5)));\n", src0_str);
}
- } else {
shader_addline(buffer, "%s);\n", src0_str);
- }
}
/* Process the dot product operators DP3 and DP4 in GLSL (dst = dot(src0, src1)) */
On 17/01/07, Mirek thunder.m@czela.net wrote:
Hi, this patch caused regression in TES: Oblivion, some objects like peoples are broken.
That doesn't have a demo, does it?
No, but i can send you some screenshots and if you want even some debug or i can try some patches.
Mirek
H. Verbeet napsal(a):
On 17/01/07, Mirek thunder.m@czela.net wrote:
Hi, this patch caused regression in TES: Oblivion, some objects like peoples are broken.
That doesn't have a demo, does it?
On 17/01/07, Mirek thunder.m@czela.net wrote:
No, but i can send you some screenshots and if you want even some debug or i can try some patches.
Mirek
What drivers are you using at the moment? Does +d3d_shader produce any errors?
I have Nvidia GF6800GS with latest stable drivers (OpenGL version string: 2.1.0 NVIDIA 97.46).
All errors from log file are here (with current cvs):
athlon64:/usr/games/oblivion# cat log.log | grep err err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D16_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D32 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D15S1 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24S8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24X8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24X4S4 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D32F_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24FS8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D16 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D16_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D32 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D15S1 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24S8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24X8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24X4S4 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D32F_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24FS8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D16 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D16_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D32 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D15S1 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24S8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24X8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24X4S4 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D32F_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24FS8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D16 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D16_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D32 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D15S1 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24S8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24X8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24X4S4 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D32F_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24FS8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D16 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D16_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D32 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D15S1 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24S8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24X8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24X4S4 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D32F_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24FS8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D16 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D16_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D32 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D15S1 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24S8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24X8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24X4S4 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D32F_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24FS8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D16 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D16_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D32 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D15S1 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24S8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24X8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24X4S4 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D32F_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D24FS8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_A4R4G4B4 and WINED3DFMT_D16 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D16_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D32 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D15S1 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24S8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24X8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24X4S4 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D32F_LOCKABLE err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D24FS8 err:d3d:IWineD3DImpl_CheckDepthStencilMatch unsupported format pair: WINED3DFMT_X4R4G4B4 and WINED3DFMT_D16 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 470, block size = 4 err:dsound:DSOUND_MixOne underrun on sound buffer 0x14a91170 fixme:d3d_shader:print_glsl_info_log Error received from GLSL shader #50: "(12) : warning C7505: OpenGL does not allow swizzles on scalar expressions\n(12) : error C1031: swizzle mask element not present in operand "xyzw"\n" fixme:d3d_shader:print_glsl_info_log Error received from GLSL shader #51: "Fragment info\n-------------\n(12) : warning C7505: OpenGL does not allow swizzles on scalar expressions\n(12) : error C1031: swizzle mask element not present in operand "xyzw"\n" fixme:dsound:DSOUND_MixOne problem with underrun detection (mixlen=8060 < primary_done=16296) fixme:dsound:DSOUND_MixOne problem with underrun detection (mixlen=5744 < primary_done=13980) fixme:dsound:DSOUND_MixOne problem with underrun detection (mixlen=4224 < primary_done=12460) err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2625, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 61, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 662, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1395, block size = 4 fixme:dsound:DSOUND_MixOne problem with underrun detection (mixlen=14580 < primary_done=14584) err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1245, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 613, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2055, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1146, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 367, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 327, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 8497, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 11990, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 209, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 3151, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2625, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1346, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1977, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1245, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 621, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1755, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 11755, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1991, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 626, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 617, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 5478, block siztrace:d3d_shader:shader_glsl_load_psamplers Loading Psampler0 for texture 0 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1851, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 801, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 643, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 4482, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1209, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 4315, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 4315, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2094, block size trace:d3d_shader:set_glsl_shader_program Found existing program (13) for this vertex/pixel shader combination err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 718, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1302, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2186, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 857, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 295, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 605, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1106, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2007, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1798, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 9, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1197, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1493, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 679, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 83, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1529, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 139, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2030, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1306, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 427, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2425, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1681, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 801, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2443, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 5254, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 715, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1319, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1650, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2290, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 623, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1001, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 283, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1054, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1467, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 157, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 666, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 8094, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 74, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1541, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1206, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 322, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 4306, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1657, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2299, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 583, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1593, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 422, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 57, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 779, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 771, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 7985, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2617, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 554, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 7243, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 6170, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 3082, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of blotrace:d3d_shader:shader_glsl_select glUseProgramObjectARB call ok glsl_shader.c / 2143 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1215, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 701, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 771, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 766, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 74, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 505, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1215, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1559, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1793, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 534, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 853, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 226, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 9822, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1593, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 9, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1110, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 553, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1821, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 341, block size = trace:d3d_shader:shader_glsl_load_constants glGetUniformLocationARB call ok glsl_shader.c / 346 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 775, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2429, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2003, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 562, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 775, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2186, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 274, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2917, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1437, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 957, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 501, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2173, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 70, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1437, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1009, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 1149, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 527, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 6914, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 9, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 35, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 17, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 122, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 2534, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 6557, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 9, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 5721, block size = 4 err:dsound:DSOUND_MixInBuffer length not a multiple of block size, len = 9, block size = 4
Mirek Slugen
H. Verbeet napsal(a):
On 17/01/07, Mirek thunder.m@czela.net wrote:
No, but i can send you some screenshots and if you want even some debug or i can try some patches.
Mirek
What drivers are you using at the moment? Does +d3d_shader produce any errors?
On 17/01/07, Mirek thunder.m@czela.net wrote:
fixme:d3d_shader:print_glsl_info_log Error received from GLSL shader #50: "(12) : warning C7505: OpenGL does not allow swizzles on scalar expressions\n(12) : error C1031: swizzle mask element not present in operand "xyzw"\n" fixme:d3d_shader:print_glsl_info_log Error received from GLSL shader #51: "Fragment info\n-------------\n(12) : warning C7505: OpenGL does not allow swizzles on scalar expressions\n(12) : error C1031: swizzle mask element not present in operand "xyzw"\n"
That doesn't look quite right :-)
Could you open a bug report and attach the complete +d3d_shader trace?
H. Verbeet napsal(a):
On 17/01/07, Mirek thunder.m@czela.net wrote:
fixme:d3d_shader:print_glsl_info_log Error received from GLSL shader #50: "(12) : warning C7505: OpenGL does not allow swizzles on scalar expressions\n(12) : error C1031: swizzle mask element not present in operand "xyzw"\n" fixme:d3d_shader:print_glsl_info_log Error received from GLSL shader #51: "Fragment info\n-------------\n(12) : warning C7505: OpenGL does not allow swizzles on scalar expressions\n(12) : error C1031: swizzle mask element not present in operand "xyzw"\n"
That doesn't look quite right :-)
Could you open a bug report and attach the complete +d3d_shader trace?
Ok, but complete d3d_shader trace has about 2 GB :(
Mirek
On 17/01/07, Mirek thunder.m@czela.net wrote:
Ok, but complete d3d_shader trace has about 2 GB :(
If you want to narrow it down, just include the GLSL part for the shader that generates the error, and the d3d part. Ie, the TRACE for SetFunction for that shader. We should probably give shader constants their own debug channel.
Can i apply your latest patch for shader debuging and post debuging with +d3d_shader?
Mirek Slugen
H. Verbeet napsal(a):
On 17/01/07, Mirek thunder.m@czela.net wrote:
Ok, but complete d3d_shader trace has about 2 GB :(
If you want to narrow it down, just include the GLSL part for the shader that generates the error, and the d3d part. Ie, the TRACE for SetFunction for that shader. We should probably give shader constants their own debug channel.
On 17/01/07, Mirek thunder.m@czela.net wrote:
Can i apply your latest patch for shader debuging and post debuging with +d3d_shader?
Sure.
http://bugs.winehq.org/show_bug.cgi?id=7203
Mirek Slugen
H. Verbeet napsal(a):
On 17/01/07, Mirek thunder.m@czela.net wrote:
Can i apply your latest patch for shader debuging and post debuging with +d3d_shader?
Sure.