从零开始编写软光栅(2):搭建Java画布应用

这节课,我们正式开始搬砖……不,敲代码

由于这节课比较简单,而且大部分都是代码讲解,因此我会直接贴出其代码和代码解释。(注意,我们这门课程不是学Java的,因此有些函数不熟悉查一下就好了,不必太过纠结,重点是后面章节的图形学原理)

在Java中渲染图像需要创建一个Canvas类对象,因此我们创建一个Display类继承自Canvas。然后再创建一个JFrame窗口,在JFrame窗口中放置该Canvas。

import java.awt.Canvas;

import java.awt.Dimension;

import javax.swing.JFrame;

public class Display extends Canvas {

    private final JFrame m_frame; //JFrame窗口

    public Display(int width, int height, String title)

{

        Dimension size = new Dimension(width, height);

        //下面三行是防止Canvas大小发生拉伸变化

        setPreferredSize(size);

        setMinimumSize(size);

        setMaximumSize(size);

        //创建窗口

        m_frame = new JFrame();

        m_frame.add(this); //窗口中添加画布

        m_frame.pack(); //根据画布适应窗口

        m_frame.setResizable(false);

        m_frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        m_frame.setLocationRelativeTo(null); //让窗口居中

        m_frame.setTitle(title);

        m_frame.setVisible(true);

    }

}

最后,在Main函数中创建Display类对象即可。

public class Main {

    public static void main(String[] args) {

        Display display = new Display(800, 600, "Software Rendering");

        //    System.out.println("Hello!");

    }

}

从零开始编写软光栅(2):搭建Java画布应用_第1张图片

你可以看到Java中创建一个空白的应用程序是多么简单快速,如果使用C++,恐怕没有还纠结于各种繁琐的第三方库的链接编译问题中。这也是为什么我们选择Java来学习软光栅。

从Main函数入口运行程序,将会看到一个空白画布的Java应用程序成功被创建出来,我们后续课程就在此画布中进行绘制。

——————我是优秀的分割线————————

实际上,这是一套本人使用费曼技巧进行学习的教程

该教程并非本人完全原创,原创者为油管Up主thebennybox

在中文优秀资料普遍匮乏的环境下,本人经常会通过借鉴国外的优秀学习资料帮助自己进行学习

在本人制作一系列的中文解说教程和梳理知识的同时,其实也是可以帮助英语能力尚不足的学习者降低学习门槛,希望大家多多支持!

如果您觉得本课程有所帮助的话

请考虑资助一下Up主

Up主有一个德国留学的梦,留学生活费用不低,但目前已经辞职在家专心备考,请有能力的土豪高抬贵手,打赏小弟一两杯咖啡~

关注“游戏开发指南”公众号

回复“软光栅”可以获得本系列课程的打赏及源码下载方式,并随时订阅最新消息

从零开始编写软光栅(2):搭建Java画布应用_第2张图片

你可能感兴趣的:(2.,从零开始编写软光栅)