使用游戏引擎实现的水波纹

简介: <p><a href="http://p.blog.csdn.net/images/p_blog_csdn_net/mysticboy/462983/o_asdfsadf.png"><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0p

asdfsadf

这是波纹的截图。 程序运行时是波动的。

代码如下:

public static void valfff()
        {
            int ScreenWidth = 800; //; Feel free to change this to see the pixel filling speed !
            int ScreenHeight = 600;
            int[] CosTable = new int[ScreenWidth * 2];
            int[] ColorTable = new int[255];
            for (int i = 0; i             {
                CosTable[i] = (int)(GSin(360 * i / 320) * 32 + 32);
            }
            GameScreen gs = new GameScreen();

            // gs.OpenWindowedScreen(hande, 0, 0, 800, 600, 0, 0, 0);

            gs.OpenFullScreen(ScreenResolution.R800X600, ScreenColorDepth.X32, "srlPlasma");
            int Wave = 0;
            do
            {
                int tc = GetTickCount();
                Wave += 6;
                Wave = (Wave > 320) ? Wave = 0 : Wave;
                Console.Write(Wave);
                if (gs.StartDrawing() != 0)
                {
                    int iBuffer = gs.DrawingBuffer();
                    int iPitch = gs.DrawingBufferPitch();
                    PixelFormat iPixelFormat = gs.DrawingBufferPixelFormat();
                    if (iPixelFormat == PixelFormat.PF32Bits_RGB)
                    {
                        for (int i = 0; i                         {

                            ColorTable[i] = i                         }
                    }
                    else
                    {
                        for (int i = 0; i                         {
                            ColorTable[i] = i;
                        }
                    }
                    for (int y = 0; y                     {
                        int pos1 = CosTable[y + Wave];

                        int loc = iBuffer + iPitch * y;

                        for (int x = 0; x                         {
                            int pos2 = (CosTable[x + Wave] + CosTable[x + y] + pos1);
                            gs.SetVideoMemory(loc, ColorTable[pos2]);
                            loc += 4;
                        }
                    }
                    gs.StopDrawing();
                }
                gs.FlipBuffers();
                Console.WriteLine(GetTickCount() - tc);

            } while (gs.KeyIsReleased(Key.Escape) == false);
            gs.Close();

        }

        public static float GSin(float angle)
        {
            return (float)Math.Sin(angle * (2 * 3.14 / 360));
        }

目录
相关文章
cmder安装(window下好用的终端)
cmder安装(window下好用的终端)
261 0
|
10月前
|
机器学习/深度学习 存储 人工智能
人工智能在医疗领域的应用与挑战
【10月更文挑战第21天】 本文深入探讨了人工智能(AI)在医疗领域的应用现状与面临的挑战。随着科技的飞速发展,AI技术正逐步渗透到医疗行业的各个环节,从疾病诊断、治疗方案制定到患者管理等方面发挥着重要作用。然而,在推动医疗进步的同时,AI也面临着数据安全、隐私保护以及伦理道德等方面的严峻挑战。本文旨在全面分析AI在医疗领域的应用前景,并针对其面临的挑战提出相应的解决策略,以期为未来医疗行业的发展提供有益的参考。
352 6
|
12月前
|
数据可视化 数据挖掘 Linux
震撼发布!Python数据分析师必学,Matplotlib与Seaborn数据可视化实战全攻略!
在数据科学领域,数据可视化是连接数据与洞察的桥梁,能让复杂的关系变得直观。本文通过实战案例,介绍Python数据分析师必备的Matplotlib与Seaborn两大可视化工具。首先,通过Matplotlib绘制基本折线图;接着,使用Seaborn绘制统计分布图;最后,结合两者在同一图表中展示数据分布与趋势,帮助你提升数据可视化技能,更好地讲述数据故事。
252 1
|
7月前
|
数据采集 数据可视化 数据处理
Pandas高级数据处理:数据仪表板制作
《Pandas高级数据处理:数据仪表板制作》涵盖数据清洗、聚合、时间序列处理等技巧,解决常见错误如KeyError和内存溢出。通过多源数据整合、动态数据透视及可视化准备,结合性能优化与最佳实践,助你构建响应快速、数据精准的商业级数据仪表板。适合希望提升数据分析能力的开发者。
166 31
|
7月前
|
存储 人工智能 算法
《探秘AI绿色计算:降低人工智能硬件能耗的热点技术》
在人工智能快速发展的背景下,硬件能耗问题日益突出。为实现绿色计算,降低能耗成为关键课题。新型硬件架构如CRAM、自旋电子器件和量子计算硬件,以及优化的低功耗芯片设计、3D集成技术和液冷散热技术等,正崭露头角。同时,硬件与软件协同优化,通过模型压缩、算法适配等手段,进一步提升能效。这些技术将推动AI向更绿色、高效的方向发展,助力应对全球气候变化。
306 19
|
9月前
|
机器学习/深度学习 人工智能 安全
合合信息在视觉内容安全领域的创新与应用-应对伪造挑战的前沿进展
在2024年中国图象图形学学会青年科学家会议上,上海合合信息科技股份有限公司图像算法研发总监郭丰俊博士分享了“视觉内容安全技术的前沿进展与应用”。随着AI技术的发展,尤其是深度学习和生成对抗网络(GANs)的成熟,视觉内容伪造技术日益复杂,给传统审核手段带来挑战。郭博士介绍了合合信息在图像、视频篡改检测及人脸鉴伪等领域的创新解决方案,强调了大模型如ForgeryGPT的应用前景,并指出未来视觉内容安全将趋向多模态检测和智能化防护,以应对不断演化的伪造手段。合合信息通过自研AI算法,实现了对篡改区域的精确识别,具备较强的跨域泛化能力,已在金融、政府监管等领域广泛应用。
|
10月前
|
边缘计算 人工智能 安全
探索边缘计算:定义、优势及未来趋势
探索边缘计算:定义、优势及未来趋势
|
11月前
|
Android开发
Android 事件分发机制详细解读
Android 事件分发机制详细解读
180 5
|
11月前
|
搜索推荐 数据安全/隐私保护
智能玻璃:自适应环境变化的建筑材料
【10月更文挑战第17天】智能玻璃是一种能够根据外界环境条件自动调节透明度、颜色或隔热性能的高科技建筑材料。本文介绍了智能玻璃的工作原理(如电致变色、热致变色、光致变色)、分类、应用领域(建筑、汽车、航空)以及其在节能环保、隐私保护、光线控制等方面的卓越表现。未来,智能玻璃将更加智能化,助力建筑行业向绿色化、可持续方向发展。
|
JavaScript 前端开发
JavaScript 中的 NaN:非数字值的深入解析
【8月更文挑战第31天】
476 1