ipid怎么在游戏中自己摄像机专用镜头游戏镜头

您当前的位置是: ->
NBA2K16怎么切换镜头 游戏视角调整方法
NBA2K16怎么切换镜头 游戏视角调整方法
07:04:00来源:斗蟹游戏编辑:啊飒飒3083
  怎么切换镜头?游戏视角调整方法是什么?NBA2K16之中小伙伴们是否对于当前的视角感觉到很不习惯呢?下面就是斗蟹攻略带来的NBA2K16怎么切换镜头。  以快速比赛为例,我们进入游戏开始比赛后,按手柄start键进入暂停,在最下方就有镜头设置,点击进入。  进去后,你就可以看到左上角有许多镜头选项,按手柄的“LB、RB键”就可以切换,与此同时球场上的视角也会发生变化,你可以轻松找到适合你的视角。  个人比较习惯“体育馆直播”视角,“包厢镜头”能很直观且清晰的看到场上球员的动态。  除了快速比赛之外,在街头模式调整视角也很简单,手柄十字键按右即可。  以上就是斗蟹攻略带来的NBA2K16怎么切换镜头 游戏视角调整方法。希望能够帮助到大家,祝大家游戏愉快。
游戏语言:简体中文
游戏类型:
游戏大小:39.29 GB
更新时间:
官方网站:
操作系统:XP / VISTA / WIN7 / WIN8
大家都在玩
热门游戏攻略
斗蟹推荐专题
侠客风云传
天涯明月刀
今日游戏推荐
Undefined offset: 0 in /home/case//App/views/frontend/Guide/detail.php on line 455更多频道内容在这里查看
爱奇艺用户将能永久保存播放记录
过滤短视频
暂无长视频(电视剧、纪录片、动漫、综艺、电影)播放记录,
使用您的微博帐号登录,即刻尊享微博用户专属服务。
使用您的QQ帐号登录,即刻尊享QQ用户专属服务。
使用您的人人帐号登录,即刻尊享人人用户专属服务。
按住视频可进行拖动
把视频贴到Blog或BBS
当前浏览器仅支持手动复制代码
视频地址:
flash地址:
html代码:
通用代码:
通用代码可同时支持电脑和移动设备的分享播放
收藏成功,可进入查看所有收藏列表
方式1:用手机看
用爱奇艺APP或微信扫一扫,在手机上继续观看:
方式2:一键下载至手机
限爱奇艺安卓6.0以上版本
使用微信扫一扫,扫描左侧二维码,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:&&
设备搜寻中...
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
连接失败!
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
部安卓(Android)设备,请点击进行选择
请您在手机端下载爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:&&
爱奇艺云推送
请您在手机端登录爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
180秒后更新
打开爱奇艺移动APP,点击“我的-扫一扫”,扫描左侧二维码进行登录
没有安装爱奇艺视频最新客户端?
爸爸去哪儿2游戏 立即参与
播放量数据:
2,880人已订阅
你可能还想订阅他们:
{{#needAdBadge}} 广告{{/needAdBadge}}
&正在加载...
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制
安装爱奇艺视频客户端,
马上开始为您下载本片
5秒后自动消失
&li data-elem="tabtitle" data-seq="{{seq}}"& &a href="javascript:void(0);"& &span>{{start}}-{{end}}&/span& &/a& &/li&
&li data-downloadSelect-elem="item" data-downloadSelect-selected="false" data-downloadSelect-tvid="{{tvid}}"& &a href="javascript:void(0);"&{{pd}}&/a&
选择您要下载的《
色情低俗内容
血腥暴力内容
广告或欺诈内容
侵犯了我的权力
还可以输入
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制网络直播怎么设置可以放游戏镜头又可以有自己的镜头_百度知道镜头背后的我们|镜头背后的我们小游戏|镜头背后的我们游戏攻略|镜头背后的我们游戏下载|
热门游戏推荐
专属的游戏王国。
方便下次再玩
鼠标操作 操作方向
操作J 操作I 操作K 操作L
最佳大小最佳大小
鼠标操作Z快进
使用鼠标点击选择,推动剧情发展,按Z键快进。游戏结束了怎么办?不要怕!更多精彩内容,尽在!<FONT color=#ff橙光游戏玩家交流QQ群成立了!欢迎大家踊跃加入,一起讨论哦~交流群1:④③⑨⑨橙子家园【】交流群2:④③⑨⑨橙子家园?贰【】温馨提醒: &1&游戏过程中记得随时存档,以免重头开始;&2&请不要点击游戏的退出按钮,否则会黑屏;&3&如果360浏览器出现数据加载异常的情况,请清理下电脑缓存或者更换其他浏览器即可正常进行游戏;&4&游戏中的鲜花是用于开启传送门、隐藏福利剧情等付费章节,对主线剧情无影响。本站暂不支持鲜花付费系统,如有遇到,请先行跳过。
游戏加载完毕点击[开拍]即可开始游戏
合理选择选项,推动剧情发展,看看这是个怎样的故事。
如果觉得小黑游戏好玩,请把告诉你的朋友!更好玩的游戏等着你!小提示:按此添加收藏,方便下次再玩
类型:女孩
一周女孩小游戏排行
最新女孩小游戏排行程序写累了,就来玩玩酷跑小游戏吧,嘿嘿。
雨松MOMO送你一首歌曲,嘿嘿。
Android研究院之游戏开发摄像头更新 (二)
Android研究院之游戏开发摄像头更新 (二)
围观4045次
编辑日期: 字体:
游戏中摄像头的原理介绍
在游戏开发中更新摄像头的位置可以决定屏幕显示的内容,尤其是RPG类游戏摄像头有着非常重要的作用,我举一个例子 有时候我们在玩RPG游戏的时候进入一个新的场景 触发一段脚本后 发现镜头开始向上移动 根据镜头移动玩家可以大概浏览一下这个场景有什么东西 ,触发什么样的剧情。这个实现的方式就是游戏摄像头原理。
如图所示:首先摄像头显示的区域也是手机屏幕显示的区域 如果需要更改摄像头的位置
其实是更改背景地图的位置 利用程序拖动背景地图
给玩家一种假象让玩家感觉像是摄像头在移动而不是背景地图在移动。
游戏中地图的绘制原理介绍
根据地图编辑器生成的出来的数组的每一个tile 的 ID 找到每一个tile的地图资源原始文件的XY坐标 算出来图片的显示位置利用程序的切割的方法把每一个tile切割出来显示在手机屏幕中。 切割图片的代码所示:
1234567891011121314151617181920
* 绘制图片中的一部分图片
* @param canvas
* @param paint
* @param bitmap
* @param x
* @param y
* @param src_x
* @param src_y
* @param src_width
* @param src_Height
*/ private void DrawClipImage(Canvas canvas, Paint paint, Bitmap bitmap,
int x, int y, int src_x, int src_y, int src_xp, int src_yp) { &&&&canvas.save(); &&&&canvas.clipRect(x, y, x + src_xp, y + src_yp); &&&&canvas.drawBitmap(bitmap, x - src_x, y - src_y, paint); &&&&canvas.restore(); }
canvas.save();
切割图片之前先把Canvas保存起来 然后在切割
绘制结束后
canvas.restore();
在把Canvas的在状态重置回来 如果不这么做的话 第一张图片切割后就会挡住以后所有的图片,所以大家一定要记住这一点喔。
图所示:每一张tile的绘制原理就是这样,说到这里有些朋友可能就要问 如果我的地图无限大那根据这个方法岂不是要循环无限次?其实屏幕须要绘制的tile数量只需要绘制屏幕显示区域以内的, 屏幕现实区域以外的我们不用考虑绘制 只需要更新地图的坐标数据就可以,比如我的模拟器屏幕的大小是320X480 那么我实际绘制的tile数量只是 10 X15 (块)。其实游戏开发绘制中还有一个更重要的绘制技术就是双缓冲技术它可以用来解决屏幕闪烁问题,下一章中我会详细介绍。
昨天有朋友跟我提出这种用数组的方式来绘制地图不科学我很同意他的观点,为什么不科学? 原因是现在我们只有一个场景我们用一个数组来绘制地图 万一我们的游戏有100个场景 我们岂不是要在程序中写100个数组了?其实在实际开发中我们是把这些地图的信息转成xml文件 打到游戏的包中 玩家在切换游戏场景的时候便会读取当前游戏场景中的地图xml文件。其实这些xml文件中也是保存这地图的二位数组信息 但是这样做的好处就是数据驱动
程序员不用定义N个数组 做N种判断 只须要根据当前切换的场景的ID就可以得到地图的信息 十分方便 也可以避免代码中由于笔误造成的的错误 何乐而不为。
但是不管用任何方法处理数据 它的绘制原理都是一样的。
如何更新游戏中摄像头
效果图:程序取随机数更新游戏摄像头
目前以每10000毫秒更新一下摄像头的位置 (随机数) 我们有了摄像头的位置以后 就可以在算出背景图片的相对显示位置 移动背景图片的位置后就可以给玩家制造出一种摄像头在移动的假象了。
地图块是我新拼的 长宽的tile块数是20X20。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
package cn.m15.xys;&import java.io.InputStream;import java.util.Random;&import android.app.Activity;import android.content.Context;import android.content.res.Resources;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.os.Bundle;import android.view.Display;import android.view.View;import android.view.Window;import android.view.WindowManager;&public class CameraAcitvity extends Activity {&&&&&MapView mMapView = null;&&&&@Override&&&&public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 全屏显示窗口 requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN); // 获取屏幕宽高 Display display = getWindowManager().getDefaultDisplay(); // 显示自定义的游戏View mMapView = new MapView(this,display.getWidth(), display.getHeight()); setContentView(mMapView);&&&&}&&&&&public class MapView extends View {& // tile块的宽高 public final static int TILE_WIDTH = 32; public final static int TILE_HEIGHT = 32;& // tile块的宽高的数量 public final static int TILE_WIDTH_COUNT = 20; public final static int TILE_HEIGHT_COUNT = 20;& // 地图的宽高的 public final static int MAP_WIDTH = 640; public final static int MAP_HEIGHT = 640;& //镜头移动范围 public final static int CAMERA_MOVE = 10;& // 屏幕的宽高 public int mScreenWidth = 0; public int mScreenHeight = 0;& // 数组元素为0则什么都不画 public final static int TILE_NULL = 0; // 第一层游戏View地图数组 public int[][] mMapView = {
{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 1, 1, 1,
1, 1, 1 },
{ 1, 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 137, 1, 1, 1,
1, 1, 1, 1 },
{ 1, 1, 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 1, 1, 1, 1,
1, 1, 1 },
{ 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 137, 137, 137, 1, 1,
1, 1, 1, 1, 1 },
{ 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 1, 1, 1 },
{ 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 1, 1, 1 },
{ 137, 137, 137, 1, 1, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 1, 1, 1, 1 },
{ 1, 137, 137, 1, 1, 1, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 1, 137, 1 },
{ 1, 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 1 },
{ 1, 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 1, 1, 1, 137, 137,
137, 137, 137, 137 },
{ 1, 1, 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 1, 1, 1, 137,
137, 137, 137, 1 },
{ 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 137, 137, 1, 1, 1,
1, 137, 137, 137 },
{ 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 1, 1, 1, 1, 1, 1,
1, 137, 137 },
{ 1, 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 1, 1, 1, 1, 1, 1,
137, 137, 137 },
{ 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 137, 137, 1, 1, 1, 1,
1, 137, 137, 137 },
{ 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 137, 1, 1, 1, 1,
1, 1, 1, 1 },
{ 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 1, 1, 1, 1, 1, 1,
1, 1, 1 },
{ 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 1, 1, 1, 1, 1, 1,
1, 1, 1 },
{ 1, 1, 1, 1, 1, 1, 137, 137, 137, 137, 137, 1, 1, 1, 1, 1, 1,
1, 1, 1 },
{ 1, 1, 1, 1, 1, 1, 1, 137, 137, 137, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1 } };& // 第二层游戏实体actor数组 public int[][] mMapAcotor = {
{ 143, 144, 0, 102, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&185, 186, 187, 188 },
&&&&{ 151, 152, 0, 110, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&193, 194, 195, 196 },
&&&&{ 159, 160, 0, 110, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&201, 202, 203, 204 },
&&&&{ 0, 0, 0, 126, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&209, 210, 211, 212 },
&&&&{ 0, 0, 0, 134, 136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&0, 218, 219, 220 },
&&&&{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&0, 0, 227, 228 },
&&&&{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&0, 0, 0, 0 },
&&&&{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&0, 0, 0, 0 },
&&&&{ 102, 103, 103, 103, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&0, 0, 0, 0 },
&&&&{ 110, 111, 111, 111, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&0, 0, 0, 0 },
&&&&{ 110, 111, 111, 111, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&0, 0, 0, 0 },
&&&&{ 126, 127, 127, 127, 128, 0, 0, 0, 0, 0, 0, 0, 165, 166, 0, 0,
&&&&0, 0, 0, 0 },
&&&&{ 123, 124, 124, 124, 125, 0, 0, 0, 0, 0, 0, 0, 173, 174, 175, 176,
&&&&0, 0, 0, 0 },
&&&&{ 229, 230, 231, 232, 0, 0, 0, 0, 0, 0, 0, 0, 181, 182, 183, 184,
&&&&0, 0, 0, 0 },
&&&&{ 237, 238, 239, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&0, 0, 0, 0 },
&&&&{ 245, 246, 247, 248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
&&&&0, 0, 0, 0 },
&&&&{ 0, 254, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 233, 234, 235,
&&&&236, 0, 0, 0 },
&&&&{ 0, 262, 263, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 241, 242, 243,
&&&&244, 0, 0, 0 },
&&&&{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 250, 251,
&&&&0, 0, 0, 0 },
&&&&{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 258, 259,
&&&&0, 0, 143, 144 }
&&&&};& // 第三层游戏碰撞物理层数组 // 下一章介绍 // ....................& // 游戏地图资源 Bitmap mBitmap = null;& // 资源文件 Resources mResources = null;& // 游戏画笔 Paint mPaint = null;& // 横向纵向tile块的数量 int mWidthTileCount = 0; int mHeightTileCount = 0;& // 横向纵向tile块的数量 int mBitMapWidth = 0; int mBitMapHeight = 0;& //摄像头的焦点&&0.0点为焦点在中心。 int mCameraPosX = 0; int mCameraPosY = 0; & //地图左上角锚点坐标 int mMapPosX =0; int mMapPosY =0;& //记录上次时间& private long statrTime = 0;& /**
* 构造方法
* @param context
*/ public MapView(Context context,int screenWidth, int screenHeight) { &&&&super(context); &&&&mScreenHeight = screenHeight; &&&&mScreenWidth = screenWidth; &&&&mPaint = new Paint(); &&&&mBitmap = ReadBitMap(context, R.drawable.map); &&&&mBitMapWidth = mBitmap.getWidth(); &&&&mBitMapHeight = mBitmap.getHeight(); &&&&mWidthTileCount = mBitMapWidth / TILE_WIDTH; &&&&mHeightTileCount = mBitMapHeight / TILE_HEIGHT; &&&&statrTime = System.currentTimeMillis(); }& @Override protected void onDraw(Canvas canvas) { &&&&UpdateCamera(); &&&&DrawMap(canvas, mBitmap); &&&&DrawRectText(canvas); &&&&super.onDraw(canvas); &&&&invalidate(); }& private void DrawMap(Canvas canvas, Bitmap bitmap) { &&&&int i, j; &&&&for (i = 0; i & TILE_HEIGHT_COUNT; i++) {
for (j = 0; j & TILE_WIDTH_COUNT; j++) {
&&&&int ViewID = mMapView[i][j];
&&&&int ActorID = mMapAcotor[i][j];
&&&&int x = (j* TILE_WIDTH) + mMapPosX;
&&&&int y = (i* TILE_HEIGHT) + mMapPosY;
&&&&// 绘制地图第一层
&&&&if (ViewID & TILE_NULL) {
DrawMapTile(ViewID, canvas, mPaint, bitmap, x, y);
&&&&// 绘制地图第二层
&&&&if (ActorID & TILE_NULL) {
DrawMapTile(ActorID, canvas, mPaint, bitmap, x, y);
} &&&&} } private void DrawRectText(Canvas canvas) { &&&&canvas.clipRect(0, 0,mScreenWidth, 30); &&&&mPaint.setColor(Color.WHITE); &&&&canvas.drawRect(0, 0,mScreenWidth, 30, mPaint); &&&&mPaint.setColor(Color.RED); &&&&canvas.drawText("当前摄像头X坐标:" + mCameraPosX + "当前摄像头Y坐标 :" + mCameraPosY, 0, 20, mPaint); } private void UpdateCamera() { &&&&long nowTime = System.currentTimeMillis(); &&&&//每100毫秒更新一下摄像头的位置 &&&&if(nowTime - statrTime & 1000) {
//随机获得摄像头的坐标
mCameraPosX = UtilRandom(0,MAP_WIDTH - mScreenWidth);
mCameraPosY = UtilRandom(0,MAP_HEIGHT - mScreenHeight);
//根据摄像头的坐标更新地图坐标
mMapPosX = -mCameraPosX;
mMapPosY = -mCameraPosY;
statrTime = nowTime; &&&&} }& /** * 返回一个随机数 * @param botton * @param top * @return */ private int UtilRandom(int botton, int top) { &&&&return ((Math.abs(new Random().nextInt()) % (top - botton)) + botton); } /**
* 根据ID绘制一个tile块
* @param id
* @param canvas
* @param paint
* @param bitmap
*/ private void DrawMapTile(int id, Canvas canvas, Paint paint,
Bitmap bitmap, int x, int y) { &&&&// 根据数组中的ID算出在地图资源中的XY 坐标 &&&&// 因为编辑器默认0 所以第一张tile的ID不是0而是1 所以这里 -1 &&&&id--; &&&&int count = id / mWidthTileCount; &&&&int bitmapX = (id - (count * mWidthTileCount)) * TILE_WIDTH; &&&&int bitmapY = count * TILE_HEIGHT; &&&&DrawClipImage(canvas, paint, bitmap, x, y, bitmapX, bitmapY,
&&&&TILE_WIDTH, TILE_HEIGHT); }& /**
* 读取本地资源的图片
* @param context
* @param resId
*/ public Bitmap ReadBitMap(Context context, int resId) { &&&&BitmapFactory.Options opt = new BitmapFactory.Options(); &&&&opt.inPreferredConfig = Bitmap.Config.RGB_565; &&&&opt.inPurgeable = true; &&&&opt.inInputShareable = true; &&&&// 获取资源图片 &&&&InputStream is = context.getResources().openRawResource(resId); &&&&return BitmapFactory.decodeStream(is, null, opt); }& /**
* 绘制图片中的一部分图片
* @param canvas
* @param paint
* @param bitmap
* @param x
* @param y
* @param src_x
* @param src_y
* @param src_width
* @param src_Height
*/ private void DrawClipImage(Canvas canvas, Paint paint, Bitmap bitmap,
int x, int y, int src_x, int src_y, int src_xp, int src_yp) { &&&&canvas.save(); &&&&canvas.clipRect(x, y, x + src_xp, y + src_yp); &&&&canvas.drawBitmap(bitmap, x - src_x, y - src_y, paint); &&&&canvas.restore(); }&&&&&}}
最后如果你还是觉得我写的不够详细 看的不够爽 不要紧我把源代码的下载地址贴出来 欢迎大家一起讨论学习
雨松MOMO希望可以和大家一起进步。
下载地址:
本文固定链接:
转载请注明:
雨松MOMO提醒您:亲,如果您觉得本文不错,快快将这篇文章分享出去吧 。另外请点击网站顶部彩色广告或者捐赠支持本站发展,谢谢!
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
如果您愿意花10块钱请我喝一杯咖啡的话,请用手机扫描二维码即可通过支付宝直接向我捐款哦。
您可能还会对这些文章感兴趣!

我要回帖

更多关于 高清摄像机镜头 的文章

 

随机推荐