OPENGL染色的问题

llm0818 2007-12-04 10:36:37
有人知道OPENGL怎么把一个旋转的球体逐渐涂上颜色么~~
我的想法是利用光照,使光照相当于一个颜色喷枪,随着球体的转动逐渐改变被照到部分的颜色,
不知道能不能实现~~
如果OPENGL可以实现要什么函数进行哪些方面的计算呢 ~~
请高人指教~
...全文
162 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
llm0818 2007-12-10
  • 打赏
  • 举报
回复
我想给大家加分,可提示我说没有这个权利,帖子是我先发出的怎么就没权利呢`~~~
llm0818 2007-12-10
  • 打赏
  • 举报
回复
不好意思,我几天都没上网了,看到大家的留言真是感谢,还提供了思路~~
谢谢~~
DRACULAX05 2007-12-05
  • 打赏
  • 举报
回复
GLSL在VC下当然可以用,但是需要你的显卡支持OpenGL2.0
对于你的问题,我看到在好几个版你都发了,我提供个用GLSL做的思路吧

“我的想法是利用光照,使光照相当于一个颜色喷枪”
你需要写一个Pixel Shader,在这里你可以截取到每个顶点的光照信息,但是不要渲染到屏幕
你可以直接记录每个顶点的光照,然后叠加到上一次计算得到的光照中,为此你需要一个纹理记录历史光照结果
每次使用Render To Texture作乒乓叠加

最后把叠加的结果再渲染到屏幕上

OK,我也不知道怎么说比较清楚,但是从CPU的算法上说,它类似一下的一个循环

for(每个顶点)
{
计算当前光照值
与历史颜色叠加
将叠加的颜色作为新的历史颜色
}
llm0818 2007-12-05
  • 打赏
  • 举报
回复
英文的就不要了,我学俄语的,英语看不懂,能告诉我翻译后的书名叫什么。
不知道OpenGL_Shading_Language 在VC下是否可以用,我现在的东西是用MFC的单文档做的。
CS_zzd_DN 2007-12-05
  • 打赏
  • 举报
回复
呵呵,自己去买书看吧,GLSL和CG不是一两句话就能说的明白的!
有一定的数学基础最好了

中文版的电子书是没有的,不过OpenGL着色语言(OpenGL_Shading_Language)是有的卖的,而CG教程,已经不出版了,你可以去淘宝上搜搜看,说不定你运气好,能买得到!
llm0818 2007-12-04
  • 打赏
  • 举报
回复
谢谢你 ,我去找一下这方面的书看看。不知道有没有翻译过来的~?
CS_zzd_DN 2007-12-04
  • 打赏
  • 举报
回复
你的想法是可以的,不过要用GPU编程去实现,CPU计算的太慢。
如果你是学OpenGL的话,就去学一下GLSL或者CG吧,用着色器进行底层编程,给开发者很大的灵活度!

GLSL书籍:
OpenGL_Shading_Language 2.0

CG书籍:
CG教程——the.cg.tutorial.the.definitive.guide.to.programmable.real-time.graphics
crashbluebird 2007-12-04
  • 打赏
  • 举报
回复
两本书都有翻译的
我有英文版的电子
如果需要留下email

8,303

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧