C语言是怎么实现图形界面的_游戏一般用什么编程语言开发

2分钟前阅读2回复0
lrj
lrj
  • 管理员
  • 注册排名2
  • 经验值498290
  • 级别管理员
  • 主题99658
  • 回复0
楼主

C语言是怎么实现图形界面的

你能接触到的显示接口都是别人的库,比如DirectX,OpenGl,GDI,安卓的Canvas,ios的CoreGraphic等。

这个库一般分为两类,一类是面向GPU的操作库,一类是面向图形算法和内存的库。

面向GPU比较典型的就是DirectX和OpenGL.

他们接口偏向硬件,实现比较简单的纹理贴图功能,直白点就是给多个三角形,给纹理,然后显示。你可以拿着其他工具导出的模型(三角形和贴图定义),预先加载特定的纹理之后,作简单移动,缩放等操作。各种矢量变化控制工作由CPU端完成,而数据量较大的纹理贴图由GPU完成。

而GDI或者安卓的Canvas,ios的CoreGraphic是比较复杂的二维图形算法集成库,一般都是在CPU端作很多工作,然后把工作结果以内存帧的方式提交给GPU。这种方式下,CPU和GPU之间的传输带宽,以及你的工作机制非常影响速度。比如,安卓的SurfaceView画整屏会比更新局部的操作慢很多。

就以arm M系列来说,首先使用c语言完成屏幕的驱动,主要需要完成:初始化,打点函数,读点函数。如果使用gui例如UCGUI 、littlevgl等gui库到这里就完成了.如果不使用gui需要自己来写基础功能比如画线、花圆、ASCII等等功能。归根结底生成一副图片最基本的操作就是对像素点的操作。没有想象的那么神秘。不过如果想写好一个屏幕。到上面仅仅是个开始

游戏一般用什么编程语言开发

这分服务端还是客户端 客户端 也要看你用什么游戏引擎 如果是Cocos那就是c++和Lua 或者Js如果是Unity 那么主要是c# 服务端一般是java c++

开发游戏的编程语言有很多,不同的平台会使用不同的语言。这里我把平台类型主要分为四大类,即PC端,游戏主机,WEB端,移动终端。下面就分别来介绍一下这四类平台上的一些游戏开发语言。

C语言是怎么实现图形界面的_游戏一般用什么编程语言开发

  1. PC.PC端的游戏绝大多数都运行在微软的Windows系统下,游戏可以被视为一类交互性比较强的软件。既然是软件,那么理论上能够开发软件的编程语言也都能用来开发游戏,事实也确实如此。但在实际开发中,为了兼顾游戏的执行效率,PC上的大型游戏往往使用C++或者C#这类高性能语言进行开发。此外,还有一个原因是C++/C#可以无缝兼容大多数游戏引擎。

    C语言是怎么实现图形界面的_游戏一般用什么编程语言开发

  2. 游戏主机.目前主流的游戏主机有微软的XBOX和索尼的PlayStation。XBOX可以视为一个另类的PC机,它的游戏开发与现在Windows端的开发大同小异(同样可以使用Visualstudio),所以XBOX的主要编程语言也就同样是C++和C#。索尼的PlayStation使用的是一个类UNIX的操作系统,也就无法使用微软的C#语言了(要使用也可以,但很麻烦),所以就只能大量使用C++了。

    C语言是怎么实现图形界面的_游戏一般用什么编程语言开发

  3. WEB.WEB游戏是指运行在浏览器中以网页形式展现出来的一类游戏。本质上也就是一个网页,所以WEB游戏的编程语言也就主要是WEB开发语言,比如PHP,JS,HTML5等等。

  4. 移动终端。移动平台主要有安卓和iOS,安卓系统APP的主要编程语言是Java和kotlin,IOS是OC和swift。这些是APP的开发语言,而游戏也可以视为一种高性能的app。安卓下游戏主要框架由Java实现,部分需要进行大量计算的模块会使用C/C++的动态库来实现。iOS下由于其语言本身就很高效,所以基本上IOS下的游戏都是使用oc和swift两种编程语言来实现的。

以上只介绍了一小部分,希望大家关注太科罗技头条号,并在下方积极留言讨论。

0
回帖

C语言是怎么实现图形界面的_游戏一般用什么编程语言开发 期待您的回复!

取消