无极限 2021-03-31 18:01 采纳率: 75%
浏览 29
已采纳

2D游戏的视角拉升 原理是咋样的 求思路?

目前的思路

  • 思路1_图片缩放: 将所有图片按比例缩放 能够实现效果  但也有缺点   图片不合并一起缩放 单个缩放会导致图片之间的位置 出现误差

 

  • 思路2_渲染器缩放: 将整个渲染器按比例缩放大小 效果也能 但是获取鼠标 不能超过屏幕分辨率上限 游戏缩小后鼠标也只能获取1920-1080的范围内(也就是可活动区域在左上角)  剩余的屏幕空间没法移动 除非鼠标能获取超过这个范围的坐标(尝试过累计鼠标xy坐标 但也只是移动了 1920-1080 这个移动框的位置 并不能超过获取)  但好像比例缩放之后 NPC的rect 也没有变化 一样跟按比例缩放前的碰撞一样  

 

  •  思路3_将多个纹理A画到一个纹理B当中  如果纹理B分辨率过高则 非常卡...

求想实现 图片1 的情况下 按比例缩放 而不像 图2 3那样缩放会有间距差    

目前思路1代码:   能实现放大 缩小效果  效果如图2 图 3  

 

  

back_rect.x =0; 
back_rect.y =0;	 

back_rect.w =5000  * 滑轮数值; 
back_rect.h =5000  * 滑轮数值;	 
 
NPCrect.x = 100; 
NPCrect.y = 100; 

NPCrect.w = 100  * 滑轮数值;  
NPCrect.h = 100  * 滑轮数值; 
 
NPCrect.y = NPCrect.y + back_rect.y - NPCrect.w * 滑轮数值 / 2; 
NPCrect.x = NPCrect.x + back_rect.x - NPCrect.w * 滑轮数值 / 2;

 
if (event.type == SDL_MOUSEWHEEL) {  
	if (event.wheel.y > 0) { 
		滑轮数值 += 0.11; 

	if (event.wheel.y < 0) { 
		滑轮数值 -= 0.11;


 


 


 

  • 写回答

2条回答 默认 最新

  • 开发者小峰 2021-04-01 00:04
    关注

    绘制的时候进行计算就行了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输