- Сообщений: 2
- Спасибо получено: 0
Как сделать соотношение сторон 16:9 RPG Maker MV?
- Enki Locke
- Автор темы
- Не в сети
- Новый участник
-
Скрыть
Больше
9 года 7 мес. назад #94026
от Enki Locke
Здравствуйте товарищи. Как сделать соотношение сторон 16:9 RPG Maker MV? Почему вообще стандарт это квадрат, ведь сейчас все мониторы и прочие устройства воспроизведения 16:9?
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
9 года 7 мес. назад #94032
от KageDesu
KageDesu ответил в теме Как сделать соотношение сторон 16:9 RPG Maker MV?
Здравствуй, товарищ.
Вот плагин , можешь менять разрешение на какое хочешь.
Вот плагин , можешь менять разрешение на какое хочешь.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
9 года 7 мес. назад #94035
от Crazy Zey
Crazy Zey ответил в теме Как сделать соотношение сторон 16:9 RPG Maker MV?
Клёвый плагин. А можно тупой нубский вопрос? Какими командами его настраивать через игру?
Т.е. сейчас можно ввести любое разрешение в самом мейкере, но если я захочу сделать менюшку в игре, позволяющую править разрешение? Какими командами надо задавать значение высоты и ширины?
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
9 года 7 мес. назад - 9 года 7 мес. назад #94039
от yuryol
Вот плагин,позвляющий менять разрешение прямо во время игры ТЫЦ
P.S. Черт знает че тут с ссылками творится
Потому что в ссылке есть квадратные скобочки, на всякий случай вытащил скрипт отдельно. - strelokhalfer
yuryol ответил в теме Как сделать соотношение сторон 16:9 RPG Maker MV?
Crazy Zey пишет: Клёвый плагин. А можно тупой нубский вопрос? Какими командами его настраивать через игру?
Т.е. сейчас можно ввести любое разрешение в самом мейкере, но если я захочу сделать менюшку в игре, позволяющую править разрешение? Какими командами надо задавать значение высоты и ширины?
Вот плагин,позвляющий менять разрешение прямо во время игры ТЫЦ
P.S. Черт знает че тут с ссылками творится
Потому что в ссылке есть квадратные скобочки, на всякий случай вытащил скрипт отдельно. - strelokhalfer
Code:
/*=============================================================================
* ScreenChanger.js
* Version: 1.1
*=============================================================================*/
/*:
* =============================================================================
* @plugindesc v1.1 Изменение разрешения через скриптовый вызов в ивенте.
* @author Dirge
*
* @param Screen Width
* @desc Ширина по-умолчанию после первого запуска.
* Default: 816
* @default 816
*
* @param Screen Height
* @desc Высота по-умолчанию после первого запуска.
* Default: 624
* @default 624
*
* @help
* Вызов скрипта в ивентах для изменения разрешения:
* sChange_Resolution(w, h);
* Где w - ширина.
* Где h - высота.
* Так же могут пригодиться такие скриптовые команды:
* SceneManager._screenWidth - текущая ширина игрового экрана
* SceneManager._screenHeight - текущая высота игрового экрана
* =============================================================================*/
var _Screen_Changer_Parameters = PluginManager.parameters('ScreenChanger');
/*=============================================================================
* Config Manager
*=============================================================================*/
ConfigManager.screenWidth = Number(ConfigManager.screenWidth || _Screen_Changer_Parameters['Screen Width']);
ConfigManager.screenHeight = Number(ConfigManager.screenHeight || _Screen_Changer_Parameters['Screen Height']);
ConfigManager.boxWidth = Number(ConfigManager.boxWidth || _Screen_Changer_Parameters['Screen Width']);
ConfigManager.boxHeight = Number(ConfigManager.boxHeight || _Screen_Changer_Parameters['Screen Height']);
/* Alias */
var _Screen_Changer_ConfigManager_makeData = ConfigManager.makeData;
ConfigManager.makeData = function() {
var config = _Screen_Changer_ConfigManager_makeData.call(this);
config.screenWidth = this.screenWidth;
config.screenHeight = this.screenHeight;
config.boxWidth = this.boxWidth;
config.boxHeight = this.boxHeight;
return config;
};
/* Alias */
var _Screen_Changer_ConfigManager_applyData = ConfigManager.applyData;
ConfigManager.applyData = function(config) {
this.screenWidth = this.readValue(config, 'screenWidth');
this.screenHeight = this.readValue(config, 'screenHeight');
this.boxWidth = this.readValue(config, 'boxWidth');
this.boxHeight = this.readValue(config, 'boxHeight');
_Screen_Changer_ConfigManager_applyData.call(this, config);
};
/* NEW */
ConfigManager.readValue = function(config, name) {
var value = config[name];
if (value !== undefined) {
return Number(value);
};
};
/* NEW */
sGameBoxResize = function() {
var resizeWidth = SceneManager._screenWidth - window.innerWidth;
var resizeHeight = SceneManager._screenHeight - window.innerHeight;
window.moveBy(-1 * resizeWidth / 2, -1 * resizeHeight / 2);
window.resizeBy(resizeWidth, resizeHeight);
};
/* Alias */
_Screen_Changer_SceneManager_run = SceneManager.run;
SceneManager.run = function(sceneClass) {
ConfigManager.load();
SceneManager._screenWidth = ConfigManager.screenWidth || Number(_Screen_Changer_Parameters['Screen Width']);
SceneManager._screenHeight = ConfigManager.screenHeight || Number(_Screen_Changer_Parameters['Screen Height']);
SceneManager._boxWidth = ConfigManager.boxWidth || Number(_Screen_Changer_Parameters['Screen Width']);
SceneManager._boxHeight = ConfigManager.boxHeight || Number(_Screen_Changer_Parameters['Screen Height']);
_Screen_Changer_SceneManager_run.call(this, sceneClass);
sGameBoxResize();
};
var fullScreen_Resize_Switch = false
/* NEW */
sChange_Resolution = function(width, height){
ConfigManager.screenWidth = width;
ConfigManager.screenHeight = height;
ConfigManager.boxWidth = width;
ConfigManager.boxHeight = height;
ConfigManager.save();
SceneManager._screenWidth = width;
SceneManager._screenHeight = height;
SceneManager._boxWidth = width;
SceneManager._boxHeight = height;
Graphics.width = width;
Graphics.height = height;
Graphics.boxWidth = width;
Graphics.boxHeight = height;
if (!Graphics._isFullScreen()) {
fullScreen_Resize_Switch = true;
} else {
sGameBoxResize();
};
$gameMap._needsRefresh = true;
SceneManager.goto(Scene_Map);
};
/* Alias */
_Screen_Changer_Graphics_onWindowResize = Graphics._onWindowResize;
Graphics._onWindowResize = function() {
_Screen_Changer_Graphics_onWindowResize.call(this);
if (fullScreen_Resize_Switch) {
sGameBoxResize();
fullScreen_Resize_Switch = false;
};
};
Последнее редактирование: 9 года 7 мес. назад пользователем strelokhalfer.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- Enki Locke
- Автор темы
- Не в сети
- Новый участник
-
Скрыть
Больше
- Сообщений: 2
- Спасибо получено: 0
9 года 7 мес. назад #94089
от Enki Locke
Enki Locke ответил в теме Как сделать соотношение сторон 16:9 RPG Maker MV?
Спасибо. Все работает, но в процессе тестирования у меня возник ряд вопросов. Разработчики задумывали разрешение 816x624 все таки с чем это связано, возникнут ли проблемы если сделать 1920 на 1080 и рисовать графику под это разрешение(а как же дисплеи 2560 на 1440 или наоборот меньше)? Возможно мне просто не хватает фундаментальных знаний что бы понять что это не важно?
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- strelokhalfer
-
- Не в сети
- Живу я здесь
-
- Знатный грамотей
Скрыть
Больше
- Сообщений: 1640
- Спасибо получено: 1080
9 года 7 мес. назад #94090
от strelokhalfer
"Стрелок, что-то ты неочень похож на свой аватар..."(с)
strelokhalfer ответил в теме Как сделать соотношение сторон 16:9 RPG Maker MV?
Учти - "квадрат", т.е 4 на 3 не так уж и редок даже сейчас, и он в отличие от широкоформата вполне нормально смотрится и на нём, просто будет изменяться или сохранятся соотношение экрана.
И если ушь делаешь для широкоформата, возьми разрешение поменьше
И если ушь делаешь для широкоформата, возьми разрешение поменьше
"Стрелок, что-то ты неочень похож на свой аватар..."(с)
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Время создания страницы: 0.099 секунд
