• λ我爱Aspx >> Asp.Net >> Alpha 闪烁效果
  • Alpha 闪烁效果

  • :未知  Դ:internet  :2007-5-5 19:46:22  ؼ:
  • Philip Taylor

    2000年9月

    下载本文的源代码 (521 KB)

    欢迎阅读 Driving DirectX。这个月,我将通过开发一个使用 alpha 的 Direct3D 屏幕保护程序继续对 alpha 混色进行探索。

    sparkles 屏幕保护程序的屏幕快照 图 1. MSDNSparkles 屏幕快照

    图 1 显示了该示例的一个屏幕快照;要想真正欣赏这些图像,您必须花上一定的时间来观察屏幕保护程序的形态变化。

    根据 Direct3D "ScreenSaver" 示例,MSDNSparkles 屏幕保护程序将一个粒子系统与一些随机的戏法结合起来;如果这种方式与 alpha 混色相结合,就会产生梦幻般的图像。这是一个使用 ONE:ONE 操作符进行加色的示例,这会产生一些确实有趣的发光效果。

    在本专栏中,我将简要概括 Direct3D 屏幕保护示例的框架,然后深入介绍 MSDNSparkles 实现其戏法的细节。我不会涉及编写 Win32 屏幕保护程序的细节,但您可以在 MSDN 上搜索讨论这一主题的文章。

    引言 Direct3D 屏幕保护程序的框架由两部分组成:骨架和应用程序提供的函数,这些函数由每个屏幕保护程序覆盖。图 2 显示了 SDK 的屏幕保护程序样本工程视图。Screensaver.cpp 提供了一个使 D3DFrame 屏幕保护程序能够运行的骨架,如 d3dapp.cpp,而 d3dapp.cpp 反过来又提供了 D3DFrame 应用程序的骨架。只要提供覆盖的函数就可以得到一个屏幕保护程序。请记住,如果要对屏幕保护程序进行测试,则需要使用一个命令行参数 –s 从 Visual C++ 中将其启动。屏幕快照 图 2. Direct3D 屏幕保护程序样本项目视图

    该骨架使用了一些类似于那些 D3DFrame 应用程序用于执行初始化、关闭和着色的函数。这些函数的原型—Initialize3DEnvironmentCleanup3DEnvironmentRender3DEnvironment — 如下所示。

    //-------------------------------------------------------------------------- // 局部函数原型 //-------------------------------------------------------------------------- HRESULT Initialize3DEnvironment( HWND ); HRESULT Render3DEnvironment( HWND ); VOID Cleanup3DEnvironment( HWND );

    Ҷƪл˵?
  • һƪMicrosoft Windows 2000 应用程序兼容性 ( 2 )
    һƪ使用 ASP+ DataGrid 控件来创建主视图/详细资料视图 (2)