Tutorial - Como configurar o Project2DFX p4924

Project2dfx foi um projeto do ThirteenAG destinado ao aumento das distĂąncias dos efeitos 2D (os chamados 2dfx) dos GTAs (nĂŁo somente o San Andreas).


O projeto evoluiu tanto, mas tanto que ou para o mapa, onde hoje podemos até mesmo visualizar as 4 pontas do mapa de San Andreas! Tudo graças à este projeto, jå que antes tudo era muito limitadamente feito por timecyc.dat, mas agora, usar timecyc.dat para aumento de distùncia é coisa do ado, assim como usar LOD Mod também é.

Isso é uma grande demonstração da evolução dos mods do GTA, e com certeza merece um bom tutorial para todos poderem desfrutar deste mod incrível.

Clique AQUI para baixar o Project2dfx. O .ini foi atualizado pois antes ele estava com informaçÔes incorretas.

Siga abaixo e tente fazer uma boa configuração compatĂ­vel com a potĂȘncia do seu PC, e seu gosto.



GlossĂĄrio:
"2DFX" Ă© o nome dado aos efeitos 2D, como partĂ­culas e luzes, o projeto foi iniciado para aumentar a distĂąncia destas luzes, evoluiu, e agora aumenta tudo sobre distĂąncias do mapa.
"Corona" Ă© o nome dado para os brilhos das luzes.
"Searchlights" Ă© o nome dado Ă s luzes em cone, como holofotes.
"LOD" é "Level Of Detail", basicamente uma mudança de detalhe em distùncia. Este mod adiciona "Lod Lights" que são as luzes de distùncia.

Se vocĂȘ quer desativar opçÔes no .ini nĂŁo se apague a linha ou comente (#), mas sim configure-a para 0.0!



SALodLights.ini

[LodLights]
São as luzes distantes que ficaram famosamente usadas no GTA SA depois da chegada do Project2DFX. Abaixo, as configuraçÔes destas luzes.

RenderLodLights
VocĂȘ pode desativĂĄ-las colocando um "0" aĂ­ para assim o Project2DFX ser um mod de somente aumento de distĂąncia de mapa assim nĂŁo adicionando as novas luzes no jogo (na qual tiram desempenho).

MaxNumberOfLodLights
NĂșmero limite de "coronas" para aparecer. Possivelmente vocĂȘ nĂŁo precisarĂĄ configurar isso.

CoronaRadiusMultiplier
Multiplicador do tamanho do brilho da luz dependente a distĂąncia, ou seja, basta diminuir o valor para uns 0.7 ou 0.5 para ter luzes distantes menores, um efeito mais realista.

SlightlyIncreaseRadiusWithDistance
Colocando "0", ao invés de aumentar o tamanho da luz com a distancia dela, a luz continuarå sempre no mesmo tamanho setado acima.

CoronaFarClip
DistĂąncia de visĂŁo do brilho da luz.
VocĂȘ pode colocar a distĂąncia (1.0 = 1 metro) ou deixar "auto" (vem por padrĂŁo "auto", recomendado) para assim ela se ajustar automaticamente com a distĂąncia de visĂŁo do jogo.
Se estas luzes fazem seu GTA ficar com lag a noite, recomendo usar uma textura coronastar com menor definição, mas isso nĂŁo ajudarĂĄ tanto assim, o que mais deve ajudar Ă© configurar esta opção para uma distĂąncia menor, assim somente as luzes mais prĂłximas aparecerĂŁo e por exemplo nĂŁo terĂĄ luzes lĂĄ em SF enquanto vocĂȘ estĂĄ em LS, fica bem mais leve.

CustomCoronaTexturePath
Se vocĂȘ quer o brilho de luz com uma textura personalizada a partir de um .png (assim nĂŁo necessitando editar o .txd), basta colocar o endereço da imagem .png aqui.
Coloque uma imagem com nome "corona.png" na pasta do seu GTA San Andreas (no mesmo local onde fica o .exe dele), assim a imagem serå usada como uma lod light, ou seja, a textura de luz criada pelo Project2DFX (as distantes e até mesmo de carros), as luzes próximas continuarå a textura coronastar dentro do particle.txd.
VocĂȘ pode configurar por exemplo pra "CustomCoronaTexturePath = models\corona.png", no exemplo, basta colocar o .png na pasta models para a textura ser usada.

Exemplo conclusivo:
[LodLights]
RenderLodLights = 1
MaxNumberOfLodLights = 25000
CoronaRadiusMultiplier = 2.5
SlightlyIncreaseRadiusWithDistance = 0
CoronaFarClip = 800.0
CustomCoronaTexturePath = .\\corona.png

É claro, isso Ă© sĂł um exemplo de tudo o que foi dito, bem bosta.
Tamanho de todas as luzes ficaram 2.5, sem mudar, aparecendo somente até 800 metros de distùncia usando uma imagem personalizada de um logotipo meu.



[StaticShadows]
Ao contrĂĄrio do que parece, "shadows" aqui nĂŁo quer dizer sombras, mas sim a iluminação da luz no chĂŁo. É que no GTA estas luzes (e atĂ© mesmo o sangue) funciona igual as sombras do jogo, portanto Ă© comum nĂłs chamarmos isso de shadows (sombras). É meio que a sombra da luz (??).

RenderStaticShadowsForLODs
"LOD" aí neste caso são as luzes lod, as luzes distantes, ou seja, a "shadow do lod" na verdade quer dizer "iluminação das luzes distantes no chão" e não "sombra dos lods" (isso jå me confundiu).
Vem desativado por padrĂŁo pois isso Ă© pesado, pode te tirar um bom FPS alĂ©m de que vocĂȘ pode nĂŁo ter bons resultados com esta função.

StaticShadowsIntensity
Ao contrĂĄrio do que parece, esta nĂŁo Ă© a intensidade das "sombras" das luzes de lod citadas acima, mas da "sombra" de todas as luzes mesmo, ou seja, por exemplo a iluminação das luzes deixadas pelos postes na rua, configure o valor aqui para mudar a intensidade desta luz, deixando os postes com iluminação mais forte ou fraca. Quanto maior o nĂșmero, mais forte Ă© a iluminação.
(esta função não tem relação alguma com a de cima)

StaticShadowsDrawDistance
Mais outra coisa confusa. É a distĂąncia de visĂŁo da iluminação citada acima, ou seja, dos postes etc, mas Ă© limitado, nĂŁo adianta colocar nĂșmeros grandes pois continuarĂĄ sumindo (aparentemente) na mesma distĂąncia (nĂŁo sei se foi bug/incompatibilidade aqui, enfim).

Exemplo conclusivo:
[StaticShadows]
RenderStaticShadowsForLODs = 1
StaticShadowsIntensity = 2
StaticShadowsDrawDistance = 300.0

Veja como fica com RenderStaticShadowsForLODs ativado (+ usando iluminação do ECG)



[SearchLights]
As "Search lights" são as luzes como dos holofotes da Area 69 e do helicóptero da polícia quando te ilumina numa perseguição.
O Project2dfx tem opção para adicionå-las nos postes do jogo, como um efeito de neblina.

RenderSearchlightEffects
Ativar estas luzes nos postes do jogo. Vem ativado por padrĂŁo e possivelmente vocĂȘ queira desativar, pois na minha opiniĂŁo sĂŁo feias (alĂ©m de tirar FPS). Basta colocar "0" aqui.

RenderOnlyDuringFoggyWeather
Ativar faz com que as luzes somente funcionam caso esteja no clima de neblina. Pode dar um efeito interessante para quem nĂŁo gostou destas luzes, pois durante a neblina elas fazem mais sentido existir.

SearchlightEffectVisibilityFactor
É como a opacidade do efeito, visibilidade, transparĂȘncia dele.

SmoothEffect
Fazer com que tenha um fade, dando uma melhoria no efeito (diminuindo o efeito "cone").



[DrawDistanceChanger]
Agora vamos falar de distĂąncia de visĂŁo do mapa, e nĂŁo sobre as luzes.

Enable
Ativar as funçÔes abaixo. JĂĄ vem ativado por padrĂŁo, mas Ă© legal vocĂȘ entender o que acontece.

MinDrawDistanceOnTheGround
DistĂąncia de visĂŁo mĂ­nima enquanto estĂĄ no chĂŁo, ou seja, enquanto vocĂȘ estĂĄ no chĂŁo a distĂąncia de visĂŁo do mapa serĂĄ esta, e quando vocĂȘ subir a distĂąncia de visĂŁo aumentarĂĄ com as configuraçÔes abaixo.

Factor1 e Factor2
Não entendi muito bem, se alguém testar melhor tente explicar.
Pelo o que entendi, o Factor1 aumenta a distĂąncia de visĂŁo quando vocĂȘ voa alto, e o Factor2 parece ser a distĂąncia da neblina a partir da distĂąncia de visĂŁo do mapa, ou seja, Factor2 = 1.0 o mapa fica praticamente sem neblina (pode bugar a ĂĄgua do jogo, sumir a ĂĄgua por volta do mapa), enquanto Factor1 Ă© um bom aumento para vocĂȘ conseguir ver o mapa inteiro.

StaticSunSize
Tamanho geral do Sol, não faz sentido esta configuração estar neste mod e neste local, acredito que ele só colocou pois realmente é interessante mudar o tamanho do Sol, aumentando pra ter um brilho mais legal etc. No mod Mix Sets também tem isto, mas com o nome "SunSize".

Exemplo conclusivo:
[DrawDistanceChanger]
Enable = 1
MinDrawDistanceOnTheGround = 2000.0
Factor1 = 16.0
Factor2 = 3.0
StaticSunSize = 20.0

É uma função realmente interessante, pois assim vocĂȘ pode voar vendo boa parte do mapa (atĂ© mesmo o mapa inteiro), mas enquanto vocĂȘ estĂĄ no chĂŁo a visĂŁo do mapa continua pequena, assim nĂŁo tendo perda de FPS.



[AdaptiveDrawDistance]
VocĂȘ tem perda de FPS quando usa o Project2DFX? EntĂŁo vocĂȘ tem que ler isso.

Enable
Ativar a adaptação da distùncia de visão dependente do FPS do seu jogo. Isso vem desativado mas é ótimo ativå-lo.
Só funciona caso o [DrawDistanceChanger] também esteja ativado!!!

MinFPSValue
IrĂĄ diminuir a distĂąncia de visĂŁo caso o FPS esteja abaixo disso.

MaxFPSValue
IrĂĄ aumentar a distĂąncia de visĂŁo caso o FPS esteja acima disso.

MaxPossibleDrawDistance
Aumento mĂĄximo da distĂąncia no FPS alto.

Exemplo conclusivo:
[AdaptiveDrawDistance]
Enable = 1
MinFPSValue = 30
MaxFPSValue = 45
MaxPossibleDrawDistance = 4000.0


Assim o jogo terĂĄ mais chances de permanecer entre 30 e 45 FPS, e caso acima de 45 FPS, a distĂąncia de visĂŁo pode chegar a 4000.0.



[IDETweaker]
É a principal parte das configuraçÔes das distĂąncias de visĂŁo dos objetos.
Sabendo que 1.0 = 1 metro e que o o mapa do jogo de ponta a ponta tem 6 KMs (ou seja, 6000.0), fica fĂĄcil vocĂȘ configurar. Mas vocĂȘ tambĂ©m pode usar multiplicaçÔes ao invĂ©s da distĂąncia estĂĄtica para tudo, basta vocĂȘ usar algum nĂșmero abaixo de 10.0 que ele serĂĄ usado como multiplicador, por exemplo usar 2.0 na distĂąncia de visĂŁo dos LODs farĂĄ com que cada LOD fique o dobro mais visivelmente longe.

TimedObjectsDrawDistance
DistĂąncia de visĂŁo para objetos controlados por tempo. Ou seja, as janelas acesas dos prĂ©dios etc sĂŁo objetos controlados por tempo, sĂł a noite eles (as janelas) aparecem, e Ă© aqui que vocĂȘ controla a distĂąncia de visĂŁo deles.

NeonsDrawDistance
DistĂąncia de visĂŁo dos objetos de luzes que simulam neon e outros tipos de luzes.

LODObjectsDrawDistance
Distñncia de visão dos LODs. É basicamente a distñncia de visão do mapa (LODs são os modelos de baixa definição que aparecem longe para assim deixar o jogo mais leve, ou seja, diminuindo a qualidade do mapa quando o objeto está longe).
Se vocĂȘ aumentar para 6000.0 vocĂȘ poderĂĄ estar num canto do mapa e conseguirĂĄ ver o outro canto, assim como 3000.0 vocĂȘ poderĂĄ estar no centro do mapa e conseguirĂĄ ver tambĂ©m o mapa inteiro.
Lembre-se também do [DrawDistanceChanger] citado acima!!!

GenericObjectsDrawDistance
Distùncia de visão de objetos genéricos, ou seja, os objetos pequenos, não casas etc. Eles não precisam de distùncia de visão tão grande pelo fato de não serem tão grandes (mas acredito que postes entram pra lista destes objetos).

AllNormalObjectsDrawDistance
Esta Ă© a distĂąncia de visĂŁo dos objetos de alta qualidade (nĂŁo LOD), ou seja, por que ainda hĂĄ pessoas usando mods como LOD Mod e LODless?? É sĂł aumentar esta distĂąncia de visĂŁo para ter o mesmo efeito, mas agora sem bugs e muitĂ­ssimo mais leve! Os mods de LOD agora ficaram obsoletos.
Nos meus testes não aumentou a distùncia de todo o mapa, mas sim de vårios objetos, vegetaçÔes e principalmente casas, hå prints abaixo.
VocĂȘ pode por exemplo deixar 2.0 (para usar multiplicador, assim ficando 2x mais distante) que o mapa ficarĂĄ muitĂ­ssimo mais bonito e quase sem perda de FPS.
Se a distĂąncia aumentou somente um pouco, Ă© porque vocĂȘ precisa do LoadAllBinaryIPLs.

VegetationDrawDistance
Distùncia de visão da vegetação (årvores etc, não inclui vegetaçÔes pequenas, ainda não conseguiram aumentar a distùncia delas).
Se a distĂąncia aumentou somente um pouco, Ă© porque vocĂȘ precisa do LoadAllBinaryIPLs. Sem ele tambĂ©m possivelmente vocĂȘ verĂĄ conjuntos de ĂĄrvores aparecendo e sumindo pelo mapa, onde o correto sĂŁo ĂĄrvores aparecendo uma por uma.

LoadAllBinaryIPLs
É uma das chaves para tudo acima ser possível.
Os IPLs binĂĄrios sĂŁo os arquivos .ipl dentro do gta3.img onde guarda os principais objetos do mapa, fazer com que todos sejam carregados fazer este mod realmente funcionar.
O problema Ă© que, esta função no .ini parece nĂŁo funcionar corretamente, pelo menos aqui (Reyks tambĂ©m relatou isso), inclusive, faz tambĂ©m os carros aleatĂłrios estacionados (como perto das praias de LS) nĂŁo aparecerem! Mas quando eu desativei isso e usei o binaryipl.cs ( abaixo) tudo funcionou corretamente! Portanto, se com vocĂȘ foi igual, desative isso e use o .cs.
Por outro lado, isso pode fazer causar bugs loucos depois de um tempo jogando. NĂŁo tenho imagens mais, mas Ă© basicamente postes grudados nas mĂŁos dos pedestres e motoristas, alĂ©m de uns triĂąngulos amarelos espalhados pelo chĂŁo, se vocĂȘ tiver isso, desative isso e nĂŁo use o .cs. TambĂ©m pode tentar desativar o [SearchLights], avise se solucionou ou nĂŁo.

PreloadLODs
Faz os LODs serem carregados antes, jĂĄ logo quando inicia o jogo, melhora no carregamento do mapa mas pode fazer o jogo demorar um pouquinho mais para carregar, mas Ă© recomendado sempre estar ativado mesmo.

Exemplo conclusivo:
[IDETweaker]
TimedObjectsDrawDistance = 0.0
NeonsDrawDistance = 2000.0
LODObjectsDrawDistance = 1300.0
GenericObjectsDrawDistance = 500.0
AllNormalObjectsDrawDistance = 3.0 //ou seja, 3X mais
VegetationDrawDistance = 1000.0
LoadAllBinaryIPLs = 0 //usei o binaryipl.cs
PreloadLODs = 1

(lembrando novamente que foi preciso também configurar o [DrawDistanceChanger])

As configuraçÔes mostradas foram feitas rapidamente, acredito que possa melhorar (mas jå estå ótimo!).

do binaryipl.cs
(como explicado acima em "LoadAllBinaryIPLs")



Notas finais
  • VocĂȘ precisa de um HDD rĂĄpido ou um SSD, afinal, o que carrega o mapa (assim como outros modelos, carros etc) Ă© o disco, quanto mais rĂĄpido ele Ă©, mais rĂĄpido carregarĂĄ, e vocĂȘ pode aumentar a velocidade do seu fazendo desfragmentação (ver Google). SSDs sĂŁo extremamente rĂĄpidos, se vocĂȘ usar um nĂŁo terĂĄ tais problemas.
  • O grande aumento da distĂąncia de visĂŁo faz carregar mais objetos, assim causando bugs de stream (artefatos piscando sobre o mapa).
  • É necessĂĄrio aumentar o limite de Stream Memory (que tambĂ©m pode causar o bug citado acima). VocĂȘ pode usar Mix Sets configurando o "StreamMemoryMB" deixando no mĂ­nimo 512, mas pode ser necessĂĄrio no mĂ­nimo 1024 caso mods de texturas ou queira ver o mapa de ponta a ponta. Ou vocĂȘ pode usar o prĂłprio .ini do Open Limit Adjuster que vem junto ao Project2DFX (limit_adjuster_gta3vcsa.ini), nele, basta configurar o "MemoryAvailable".
  • Ler sobre o "LoadAllBinaryIPLs" acima Ă© importante, nĂŁo pule leitura.
  • O Junior_Djjr relatou que jĂĄ teve crash ao mudar o AllNormalObjectsDrawDistance e olhar para um lado do mapa, por algum motivo nunca mais aconteceu, caso te aconteça alguma coisa assim, use o CrashInfo e diminua ou nĂŁo mude este valor.
PĂĄgina inicial