游戏引擎理论与实现系列04-画线和裁剪

原创 2015年07月07日 00:18:11

画线算法和裁剪算法集成

关于画线(draw line) 和Clipping 的算法,请参考另外两篇文章, 其中有非常详细的介绍。

本节主要讨论如何集成。在Game.java, 增加了对应的画线和裁剪逻辑

    private void render() {
        BufferStrategy bs = this.getBufferStrategy();
        if (bs == null) {
            this.createBufferStrategy(3);
            return;// skip one render
        }

        //populate the bitmap
        Bitmap floors = ImageLoader.sprites;
        this.screen.render(ticker,floors);


        //draw the line
        Line line = new Line(10, 10, 60, 80, 255<<8);
        Clipping clip= new Clipping();
        clip.setArea(0, 0, 64, 68);
        clip.clipLine(line);
        line.draw(this.screen);

        //copy from the screen bitmap to screen buffer
        int[] pixels =this.screen.getPixels();
        for (int i = 0, len = pixels.length; i < len; i++) {
            this.screenPixels[i] = pixels[i];
        }

        Graphics g = bs.getDrawGraphics();
        g.drawImage(this.screenImage, 0, 0, WIDTH * SCALE, HEIGHT * SCALE, null);
        g.dispose();
        bs.show();
    }

因为本节只是介绍如何使用, 因此非常的简单明了. 下一节我们将介绍更有意思的主题精灵(Spirit).

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

游戏引擎理论与实现系列01-生成窗口

开篇几年前一个偶然的机会, 我被一个方块游戏Minecraft 吸引,于是决定花一些时间来研究该游戏实现机制, 这也是本系列的实现选择Java 的原因之一。本系列希望将我的发现与大家一起分享。

游戏引擎理论与实现系列02-主控线程和循环

介绍简单版本的游戏主控流程

HTML5 2D游戏引擎研发系列 第五章

HTML5 2D游戏引擎研发系列 第五章 作者:HTML5游戏开发者社区-白泽 转载请注明出处:http://html5gamedev.org/ 目录 " href="http://ht...

android游戏引擎andengine学习系列二:简单的例子

如何高效的学习,这才是我们最值得去学习的。     首先导入架包,下载:http://download.csdn.net/detail/duancanmeng/4060082 lib文件夹中 ...

android游戏引擎andengine学习系列六:Physics物理碰撞效果理解

看到exmaples中的例子:CollisionDetectionExample,看到效果图如下:   其实这个例子跟我们前面的绘制虚拟游戏摇杆很像,不同的就是中间有两个sprite,判断碰撞...

3D游戏引擎系列六

笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:《手把手教你架构3D游戏引擎》电子工业出版社和《Unity3D实战核心技术详解》...

HTML5 2D游戏引擎研发系列 第三章

前面2篇文章基本上没有讲解HTMl5相关的,只是提供一些游戏设计的思路,那么接下来的章节我会深入到代码层面,主要以游戏渲染技术出发,因为我接触HTML5和JS时间不长,所以有一些平台相关的优化功能可能...

游戏引擎开发系列——消息循环篇(渲染、IO、网络和音效等)

本文转自:http://gamebabyrocksun.blog.163.com/blog/static/571534632010219544464/   写了很多关于IOCP和OLEDB的文章,今天...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)