• Приветствую вас Заезжий Регистрация Вход RSS - Пятница, 14.12.2018 08:54:24
[ Новые сообщения на форуме · Личные собщения · Участники · Правила форума · Поиск · RSS ]

  • Страница 1 из 1
  • 1
Форум » Race Driver: GRID » GRID - Тех. поддержка » Игра на нескольких мониторах
Игра на нескольких мониторах
AnatoliyДата: Вторник, 23.12.2014, 00:44:19 | Сообщение # 1
Jr.Rookie
Ник в игре: aaron
Сообщений: 1
Репутация: 0
Статус: вне сайта
Как использовать дополнительные виды при игре на двух и более мониторах. например: используем два монитора, на одном основной вид -фронт, а на втором боковой. Уже реализовано - http://www.youtube.com/watch?v=EjTnWjM4km0 , вопрос - как?

Добавлено (23.12.2014, 00:44:19)
---------------------------------------------
или в таком виде - http://www.youtube.com/watch?v=RWwQ-dhVvZE

 
Alex555Дата: Вторник, 23.12.2014, 21:34:06 | Сообщение # 2
Avd.Rookie
Ник в игре: Alex555
Сообщений: 76
Репутация: 12
Статус: вне сайта
Ребята, меня спрашивают как настраивать SoftTH на два монитора, чтобы постоянно не писать в приватах, решил выложить сюда

1) Нужно определиться с возможностью видео карты, а именно если я не ошибаюсь то до серии Nvidia 8400, карты поддерживают максимальный размер поверхности 4096x4096, после, до 8192 и т.д. Для чего это нужно: Отрисовка в три (по-другому никак в версиях до SoftTH v2.0) экрана, плюс мертвая зона (bezel) с двух сторон, должны помещаться в этот максимальный размер, иначе падение.
2) Даже если используются два монитора, система будет рисовать в три, но из-за физического отсутствия 3-го монитора, в SoftTH.log(в каталоге игры), постоянно будет валиться сообщение об этом, поэтому нужно после настройки удалить из него все и поставить атрибут ReadOnly.
3) Чтобы отключить вывод в левый монитор, нужно в файле SoftTH.cfg выставить:
deviceIDLeft=-1
deviceIDright=auto
4) Теперь важно определиться с разрешением боковых мониторов (разрешение центрального монитора, будет как у PrimaryMonitor рабочего стола)
secondaryWidth=auto
secondaryHeight=auto
- параметр auto, означает взять текущее разрешение рабочего стола этих мониторов (!!! боковые мониторы должны иметь одинаковое разрешение)
- Для того чтобы уменьшить трафик перекачиваемых данных по шине, можно уменьшить разрешение, например: разрешение правого монитора 1280x1024, если выставить 800x600 то обьем передаваемых данных уменьшится 2.7раза, если же вместо 32bit'ного цвета использовать 16bit (secondaryFormat=RGB16D), то обьем упадет еще в два раза. (Если боковые мониторы используются только для периферийного зрения, глаз физически не увидит разницы (у меня, например центральный 1680, а боковой 800). Одним словом, зачем в пустую расходовать ресурсы процессора).
!!! Важно понимать, что это параметр не изменяет физическое разрешение монитора, он только описывает, на сколько будет уменьшен обьем передаваемых данных (т.е. на главном GPU будет идти расчет для 1280, потом данные сожмутся до 800, передадутся по шине CPU в другую видео карту и там повторно разожмутся до 1280 но с потерей качества).

5) Выбрать способ передачи данных на боковые мониторы, у меня uploadMethod=D3D

6) Теперь два важных и самых вроде бы непонятных параметра sideExtraWidth и borderSize:
Для этого, представим себе кофигурацию 3-х мониторной системы в разрешении рабочего стола (!!! даже если используются два монитора, и не забываем, что secondaryWidth описывает только коэфф.сжатия а не разрешение) 1280x1680x1280.
Так вот sideExtraWidth будет описывать на сколько разрешение бокового монитора отличается от центрального, для вычисления значения этого параметра, просто вычитаем из разрешения бокового монитора, разрешение центрального т.е. 1280 – 1680 = -400, вот эту цифру и записываем sideExtraWidth.
borderSize описывает мертвую зону(в пикселах) за рамками мониторов, и его можно или подобрать опытным путем или вычислить я брал разрешение мониторов на миллиметр. Потом брал расстояние между рамками в в милиметрах и вычислял отношение. У меня получилось borderSize=132.

Чтобы понять что делает SoftTH, можно представить все вот так:
КОД: ВЫДЕЛИТЬ ВСЁ

Left Monitor border Center Monitor border Right Monitor
------------ ------ --------------------- ------ ------------
Left 3D surface Center 3D surface Right 3D surface
---------+----------- ------ --------------------- ------ -----------+---------
sExtaW border border sExtaW

т.е. реально DirectX будет считать на поверхности 1680*3 + 132*2 = 5304 (см. первый пункт),
а вот разрешение для игры получиться 1680 + 1280*2 + 132*2 = 4504

Эта инструкция, к сожалению, мне не подходит.
Для начала, куда запихивать эти файлы?

Изображение

Разобрался куда надо засунуть, в корневой каталог игры iRacing.
Теперь буду мучиться с настройкой файла SoftTH.cfg.

Если кто-нибудь поможет, буду рад.
У меня два монитора: 1920х1080 и 1280х1024.

Пока сделал вот так:
;
; SoftTH 1.08 configuration file
; by Kegetys, http://www.kegetys.net
;

[config]
; deviceIDLeft/right: Direct3D device ID's of left and right monitor, or 'auto' for automatic
; secondaryWidth/Height: Left&right monitor resolution, or 'auto' to use same as middle screen resolution
; secondaryRefresh: Refresh rate of left & right monitors, or 'auto' for automatic
; secondaryFormat: Secondary device image format, 'RGB32', 'RGB16' or 'RGB16D'.
; borderSize: Size in pixels of frame border between monitors that is discarded
; noHotkeys: Set to 1 to disable all hotkeys
; noOSD: Set to 1 to disable on-screen display when changing settings (Also disables GDI+ initialization)
deviceIDLeft=-1
deviceIDright=auto
secondaryWidth=800
secondaryHeight=600
secondaryRefresh=auto
secondaryFormat=RGB32D
borderSize=132
sideExtraWidth=-640
noHotkeys=0
noOSD=0

[Direct3D]
; ** Advanced setting for Direct3D games **
; lensCorrection: Lens correction, set to 1 to enable support. >1 to enable by default
; lensCorrectionEdge: Lens correction edge offset
; hideNondefaultDevices: Hides all but the default adapter from the game
; forceHorizontalFOV: Forces horizontal FOV to be three times as wide
; forceResolutionWidth/Height: Forces device to be created with this resolution
; force16bitDepth: Force game to use 16bit depth buffer, can improve performance and reduce memory use
; sleepBeforeRead: Time in ms to sleep before reading back buffer data from video card
; useMultihead: Uses multihead features of primary card if available, can increase performance and reduce memory use
; delayedPresent: When useMultihead enabled, delay primary monitor present to sync with secondary head
; swapOrder: Swap order at which the frame contents are copied
; d3d8dll: Path to D3D8.dll/D3D9.dll to use or auto for automatic (system32 dir)
lensCorrection=0
lensCorrectionEdge=0
cylindicalCorretionAngle=0
hideNondefaultDevices=0
forceHorizontalFOV=0
forceResolutionWidth=0
forceResolutionHeight=0
force16bitDepth=0
sleepBeforeRead=2
useMultihead=1
delayedPresent=0
swapOrder=0
autoSquash=0
d3d8dll=auto

[hooks]
; Win32 API hooking settings - Used for some extra compatibility and game-specific fixes
; doHooking: Enable/disable hooks in Direct3D, with OpenGL hooks are always enabled
; doScaleMouseCoordinates: Scale mouse coordinates for getCursorPos to fix games which do not handle negative screen coordinates properly
; doScaleFromLeftScreen: Spread out mouse coordinates from left screen to full width
; doScaleWindowRects: Scale focus window WindowRect
; doScaleClientRects: Scale focus window ClientRect
; mouseXoffset: Number of pixels to offset mouse cursor position in X axis, to fix misplaced cursor due to negative screen coordinates. auto = use X resolution
doHooking=1
doScaleMouseCoordinates=0
doScaleFromLeftScreen=0
doScaleWindowRects=0
doScaleClientRects=1
mouseXoffset=auto

; Triplehead screenmodes to add to resolutions list (width multiplied by 3 and border added)
; 'auto' adds current primary monitor desktop resolution
; Must be last in this file
[modes]
800x600x60
800x600x75
800x600x85
1024x768x60
1024x768x75
1024x768x85
1280x960x60
1280x960x75
1280x960x85
1280x1024x60
1280x1024x75
1280x1024x85
1600x1200x60
1600x1200x75
1600x1200x85
auto

Добавлено (23.12.2014, 21:34:06)
---------------------------------------------
Это с сайта симрейсинг. Погугли.


 
Форум » Race Driver: GRID » GRID - Тех. поддержка » Игра на нескольких мониторах
  • Страница 1 из 1
  • 1
Поиск: