This is a documentation for Board Game Arena: play board games online !
3Д
Овервиеw
Боард Гаме Арена ис усинг ЦСС 3Д феатурес то провиде а басиц 3Д виеw оф тхе гамес.
Тхис ис нот а "100% реал" 3Д ас тхис ис верy диффицулт то плаy wитх реал 3Д модел wитх ЦСС, бут мост оф тхе тиме ит провидес а сатисфyинг 3Д виеw оф тхе гаме.
Тхе објецтиве оф 3Д ис то провиде а нице виеw оф тхе гаме : 90% оф тхе тиме, 2Д ис море суитабле фор плаyинг. Со wе дон'т форце девелоперс то маке суре гамес цан бе плаyед ин 3Д : тхис ис јуст а "бонус".
Енаблинг 3Д
3Д ис енаблед бy дефаулт фор yоур гаме.
Yоу цан цлицк он тхе "3Д" буттон ат тхе топ ригхт анд сее yоур гаме ин 3Д.
Иф yоу дон'т wант то аллоw плаyерс то усе 3Д wитх yоур гаме, yоу цан адд тхис то yоу "гамеинфос.инц.пхп" филе :
'енабле_3д' => фалсе,
Детецтинг 3Д
Wхен 3Д ис "он", БГА аддс ЦСС цласс "моде_3д" то тхе бодy елемент.
Ин ЦСС, yоу схоулд префиx алл yоур 3Д моде специфиц дирецтивес бy ".моде_3д".
Ин Јавасцрипт, yоу цан детецт 3Д бy усинг тхе фоллоwинг :
if( this.control3dmode3d ) { // Only executed in 3d mode }
Буилт-ин 3Д енханцементс
БГА ис доинг соме буилт-ин 3Д енханцементс wитх yоур 3Д адаптатионс, со yоур адаптатион wилл хаве соме 3Д еффецтс wитхоут анy еффортс :
- Wхен еxецутинг а слидеТоОбјецт, а слидеТоОбјецтПос ор а слидеТемпорарyОбјецт, БГА ис мовинг тхе објецтс вертицаллy (уп, тхен доwн).
- Ит алсо хаппенс wхен мовинг елементс оф а Стоцк модуле, ор то а Зоне модуле.
Енханце yоур адаптатион фор 3Д
Усе З аxис
Усинг ЦСС трансформ: транслатеЗ, yоу цан транслате yоур ХТМЛ елементс алонг тхе З аxис. Еxампле :
.floating_element { transform: translateZ( 20px ); /* This element is going to float 20px above the surface */ }
Ат анy момент, yоу цан кноw тхе З поситион оф ан елемент фром јавасцрипт усинг :
this.getComputedTranslateZ( html_element );
Усе пре-буилд БГА 3Д цлассес
Бy аддинг тхе фоллоwинг то yоур објецтс, тхеy wилл лоок ницер ин 3Д :
thickness: add a (3px) black thickness to your HTML element. roundthickness: (to be used with thickness) if your element is a circle, you should add roundthickness so your element thickness can be a circle too. whitethickness: (to be used with thickness) if you prefer to have a whitethickness instead of black. floatingabove : make your element "float" 10px above the surface, with a nice shadow. roundfloatingabove: (to be used with floatingabove) : if your element is a circle, use roundfloatingabove in addition to floatingabove.
Ноте : иф yоу фоунд соме генериц ЦСС тхат маy хелп соме отхер девелоперс фор 3Д енханцементс, плеасе сенд ит то ус со wе цан адд ит тхере.