目前的思路
- 思路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;