游戏夜读 | 改写图形API的意义

作者: 良宵听雨 | 来源:发表于2019-07-27 10:30 被阅读274次

游戏编程,一般指的是视频游戏的制作,也就免不了当一把“画家”:在屏幕上弄点线面,形状色彩,喷洒溅射之类的。图形、色彩,似乎是人类的一个本能爱好,有视力的人,就不会对出色的视觉效果视而不见。但有一句话说的好,“几乎没有开发游戏的人去重写一套图形API,一般就是使用DX或OpenGL等现成的”。这一次聊一聊几乎以外的事情。

首先,API是什么?另一个相关的概念SDK又是什么?API,应用程序编程接口,全称Application Programming Interface;SDK,软件开发工具包,全称Software Development Kit。API是通道性质,SDK是一条龙服务性质。打个比方:池塘边有一个小朋友,想摸鱼。那怎么才能摸到鱼呢?想到了用“小网兜”。小网兜就是API,通过小网兜能获得鱼。然后池塘边不远处有一家小店,里面有卖或者送摸鱼的整套装备,包括:防水衣裤、遮阳帽子、大网兜、电动马达、探照灯、备用小网兜……相对齐全的别人备好的装备就是SDK,小朋友可以去买或者拿这套装备,既省事又高效。

其次,DX是什么?OpenGL又是什么?为什么是现成的?DX,是DirectX的简称,全名Direct eXtension,是微软公司创建的多媒体编程接口。OpenGL,开放式图形库,全名Open Graphics Library,实际上并不是API,是由科纳斯组织(Khronos Group)建立并维护的一套标准,也经常被看做是一个图形编程接口。

很多开发相关的论坛上,早些年都有讨论选DX还是OpenGL,特别早的都已经古老到消失或无法回复了。图形API不是只有这两个。比如类似于微软的DX,适用于 Mac 系统(OS X 和 iOS)的Metal,还有许多引擎类。再比如:Vulkan。最早是由科纳斯组织(Khronos Group)发表在2015年游戏开发者大会(GDC)上,Vulkan的定义和用途跟OpenGL差不多,还被称为下一代的OpenGL,只是因为都是Khronos家维护的。实际上两者并不兼容,Vulkan在硬件适配上性能更优越些,因为开发者可以实现显存的管理了。

改写太难,还是从使用开始。没有改写图形API的捷径,但有封装的好手。

图形API已经不停壮大,以至于自身的发展也成为了一个十分复杂的领域,但接口还是接口,实际应用的时候应该只会越来越高效、便捷、丰富,只是事情往往没有那么简单。视频游戏是图片API使用的“重灾区”,影视作品中的动画、特效也跑不掉,图形API作为泊来品,土生土长的中国人就难免吃不消。这时候先富带动后富的模式就突显了,无法从语言或者工具的本身下手,只好滋润在前辈的经验分享里。比如:毕业后即前往日本索尼敲代码的陈文礼在正式步入游戏行业后,陆续推出了围绕“从零开始手敲次世代游戏引擎”的文章,从图形渲染说开去。

文/良宵听雨。授权“游戏夜读”发表。

相关文章

  • 游戏夜读 | 改写图形API的意义

    游戏编程,一般指的是视频游戏的制作,也就免不了当一把“画家”:在屏幕上弄点线面,形状色彩,喷洒溅射之类的。图形、色...

  • OpenGL(1)-概述

    在日常的图形、音视频开发中,我们都会不可避免的使用到图形API,来实现图形的底层渲染: 比如在游戏开发中,对于游戏...

  • 图形编程接口OpenGL/OpenGL ES/Meta有什么用?

    图形API可以解决什么问题? 简单来说就是实现图形的底层渲染 比如在游戏开发中,对于游戏场景/游戏人物的渲染 比如...

  • 3D游戏的一帧画面是如何显示的

    3D游戏的一帧画面是如何显示的 3D游戏一般使用图形渲染引擎实现,而图形渲染引擎调用的是图形渲染API。常见的图形...

  • 浅谈OpenGL专业名词

    图形API 要了解OpenGL,首先需要知道什么是图形API。简单解释图形API就是图形的底层渲染实现方法。并且它...

  • 图形API与滤镜处理

    图形API 利用GPU芯片来高效渲染图形图像,图形API是iOS开发者唯一接近GPU的方式 图形API应用: ⽐如...

  • OpenGL专业名词解析

    图形API了解 在我们进行图形化开发的时候经常会使用图形API进行开发,首先我们对市面上的图形API进行一些简单的...

  • HTML5 Canvas笔记——将canvas的内容打印成图像—

    参考书目:《HTML5 Canvas核心技术 图形、动画与游戏开发》 将canvas的内容打印成图像—改写的时钟程...

  • 一、图形API简介

    学习图形API前,我们先了解几种主流图形API。 1.OpenGL(Open Grapics Library) 这...

  • 第二弹 OpenGL 快速理解 图形API(一)

    快速了解图形API 图形API简介(定义) OpenGL(Open Graphics Library)是一个跨编程...

网友评论

    本文标题:游戏夜读 | 改写图形API的意义

    本文链接:https://www.haomeiwen.com/subject/utmsrctx.html