游戏开发论坛

 找回密码
 立即注册
搜索
查看: 5044|回复: 11

来问一个调试HLSL的fx文件的问题:)

[复制链接]

24

主题

77

帖子

97

积分

注册会员

Rank: 2

积分
97
发表于 2004-9-20 17:03:00 | 显示全部楼层 |阅读模式
呵呵

是这样的,我写了一个最简单的程序来学习,如下:
void VertScene( float4 Pos : POSITION,
float4 Color : COLOR,

out float4 oPos : POSITION,
out float4 oColor : COLOR)
{
oPos = mul( Pos, g_mWorldViewProjection );
oColor = float4( 1, 0, 0, 1) ;

}
这个程序可以顺利的进入shader的调试,我可以看到每个点的数据变化

但是,如果这样写:
void VertScene( float4 Pos : POSITION,
float4 Color : COLOR,

out float4 oPos : POSITION,
out float4 oColor : COLOR)
{
oPos = mul( Pos, g_mWorldViewProjection );
oColor = Color;

}

很奇怪,程序就不能进入shader的调试了,虽然好像shader程序也执行了。。。

这是为什么呢?

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2004-9-20 19:54:00 | 显示全部楼层

Re:来问一个调试HLSL的fx文件的问题:)

应该是程序错误/

24

主题

77

帖子

97

积分

注册会员

Rank: 2

积分
97
 楼主| 发表于 2004-9-21 09:22:00 | 显示全部楼层

Re: Re:来问一个调试HLSL的fx文件的问题:)

大哥,我也知道可能是哪里错了。


不过能不能具体一点呢?

谢!

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2004-9-22 19:45:00 | 显示全部楼层

Re:来问一个调试HLSL的fx文件的问题:)

查看一下编译的错误信息不就知道了

24

主题

77

帖子

97

积分

注册会员

Rank: 2

积分
97
 楼主| 发表于 2004-9-23 10:40:00 | 显示全部楼层

Re:来问一个调试HLSL的fx文件的问题:)

唉!编译没有错误,也没有警告。。。。

但是执行的时候无法调试shader,所以才来问的。。。

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2004-9-23 12:41:00 | 显示全部楼层

Re:来问一个调试HLSL的fx文件的问题:)

我是说查看你的 shader 代码编译错误信息,不是程序代码。

24

主题

77

帖子

97

积分

注册会员

Rank: 2

积分
97
 楼主| 发表于 2004-9-23 16:35:00 | 显示全部楼层

Re:来问一个调试HLSL的fx文件的问题:)

shader 代码也没有错误呀。。。

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2004-9-23 20:03:00 | 显示全部楼层

Re:来问一个调试HLSL的fx文件的问题:)

你如何知道没有错误?编译时要指定调试选项才能输出错误信息的。

24

主题

77

帖子

97

积分

注册会员

Rank: 2

积分
97
 楼主| 发表于 2004-9-24 09:30:00 | 显示全部楼层

Re:来问一个调试HLSL的fx文件的问题:)

哦?我是按d9summer文档上compile fx文件的格式设定的编译选项:
貌似很简单,如下:fxc /Od /Zi /Tfx_2_0 /Fo"$(ProjectDir)$(InputName).fxo" "$(InputPath)"

而且文档说这种设定适合大部分情况(呵呵,我的程序这么初级,应该也适用吧?^_^)

编译输出的结果:
fxc compile for debug: e:\Ligongli\DXSample\BasicHeart\BasicHeart.fx
Microsoft (R) D3DX9 Shader Compiler 5.04.00.2904
Copyright (C) Microsoft Corporation 2002-2003. All rights reserved.
compilation succeeded; see e:\Ligongli\DXSample\BasicHeart\BasicHeart.fxo

高手给详细指点一下吧!
(对了,我昨晚发现顶点格式有些问题,我设定的顶点格式的颜色是三维向量,不过shader中要求是四维的,有影响吗?)

20

主题

473

帖子

502

积分

高级会员

Rank: 4

积分
502
发表于 2004-9-24 10:17:00 | 显示全部楼层

Re:来问一个调试HLSL的fx文件的问题:)

什么叫不能调试了?
你在oPos = mul( Pos, g_mWorldViewProjection );
这一句前面下断点,看能不能断下来
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-8-18 19:03

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表