테라 시작하면서 프레임 올리기위해 여러가지 찾아봤습니다.
S1Engine.ini, (언리얼엔진) 상세내역입니다. 영문이라
보기 힘드시겠지만. 혹시 필요하신분 있으시면 보시면 좋겠네요.
던전 들어갔을때 반대쪽 벽면이 반투명화되는데요
그 투명도가 너무 불투명해서 게임하는데 지장이 있더라구요. 혹시 이부분 조절하실수 있으신분 있으시면 답변 부탁드립니다.
많은 정보교환하고싶습니다
[Engine.Engine]
bForceStaticTerrain= This setting tells the game wether to make all
ground polygons stay the same size and shape and angle no matter how far
you are from it. If you set this to false, the game will turn a very
round hill of many polygons into a jagged hill of less polygons the
further away you get. I'm not sure if this applies to TERA's client, but
thats what this option does in Unreal 3 Engnie games.
[Engine.GameEngine]
bSmoothFrameRate= This turns on the game's built in framerate smoothing
software, I'm not entirely sure how it works, but it won't ever INCREASE
performance, it will only keep your FPS the same, or lower it. But from
what I've seen and read on other forums, all it really does is just cut
down on sudden framerate changes, or "volatility," but in order to do
this, it may end up showing your game at a lower framerate then its
capable of, at times, all for the sake of making the framerate changes
"smooth".
MinSmoothedFrameRate= This sets the minimum framerate you want smoothing to be enabled.
MaxSmoothedFrameRate= This not only sets the max for smoothing to be enabled but it will cap your games framerate at this.
[SystemSettings]
StaticDecals= Turns on permanent decoration type transparent textures
that are laid ontop of objects or surfaces. If there is a blood stain
that is permanent in cave or something, this will enable it.
DynamicDecals= Turns on temporary transparent textures that pop up and
fade away eventually such as blood stains on the ground from combat.
DecalCullDistanceScale=0.25 This setting changes how far into the
distance decals are viewed before they dissapear. I am not sure if TERA
utilizes this command line, but I copied this line from my other Unreal 3
game.
DynamicLights= This turns on the majority of the lighting in the game.
Without this on, every zone/area you go to will look abnormally dark.
This setting is also a prerequisite for alot of the lighting/shadowing
in the engine.
DynamicShadows= This turns on any shadow that is created and regularly
updated as the object casting the shadow moves. Dynamic shadows are the
very CPU intensive kind. You can turn this option off, and still retain
blob shadows and tree canopies etc.
LightEnvironmentShadows= This command is supposed to create shadows in
areas that are blocked from the main light source, like the sun or moon.
So if your in a dark cave or under a large tree, if you go deep enough
into the shadow, a secondary shadow will be created, possibly projected
in a different direction than the sun/moon whatever. This setting did
not seem to make any change for TERA, but I could be mistaken because I
never left the noob island and got into some dark areas where a 2nd
shadow might appear.
CompositeDynamicLights= This setting simplifies dynamic lights, and by
doing so, supposedly increases performance. I saw no visual difference
between this being on or off, which is a good thing. So I recommend
turning it on. Higher FPS with no visual difference is a good thing.
DirectionalLightmaps= This setting gives a "bump mapping / shiny" type
effect to textures, making them look more like a real surface then just a
2d texture. Changing this to off doesn't work in TERA, because it makes
the tree leaves/canopy's turn red/green etc. So leave this on for sure.
MotionBlur= I wasn't able to notice any motion blur in TERA, but setting
this to true in my other game makes turning your camera view quickly,
blur the screen a bit. Its just a post processing effect that uses your
GPU only, and it can make a choppy framerate look a bit better. (Motion
blur is what films use to trick your eyes into thinking the 30 fps
framerate is actually 60 fps. Our eyes can detect 60-70 fps.)
MotionBlurSkinning= Not sure if this setting works in TERA or not, but
in the Unreal 3 Engine, it makes objects and textures that are moving
quickly past you, blurred. Which is a VERY cool and visually pleasing
effect. Set it to 1 to enable it, or 0 to disable. Its more of a First
Person Shooter / high speed feature, so it could work in TERA, but you'd
never see it unless you or a mob were moving very fast.
DepthOfField= This is a post processing feature by your GPU that adds a
layer of blur to objects/textures the further they are from the camera.
It can eliminate some aliasing on distant objects, which is good, and
can also add to visuals, but some people don't like it.
AmbientOcclusion= This is a post processing setting that can be applied
to most 3D applications. it adds darkness to areas that are slightly
obstructed from the light source, or adds darkness to areas where two
objects or textures intersect (such as the corners where walls meet the
floor, or where plants meet the ground). I wasnt able to test this on
TERA yet, it could potentially work with a Nvidia Inspector
compatibility setting, but I didn't get time to try it. With the default
TERA options/settings, you cannot force/enable Ambient occlusion.
Bloom= This is a post processing setting that adds a glare / bright
white effect to clouds or neon textures, such as LED lights on a wall or
armor etc.
UseHighQualityBloom= I tried changing this setting in TERA and I was
unable to see a difference in the bloom in the sky / horizon. It should
give a better bloom effect at the cost of performance, but I saw no
difference so, I will leave it off.
Distortion= This is a post processing effect that occurs when you swing your weapon or look into a teleportal.
SpeedTreeLeaves= Speed tree is a program/company that makes fast trees
for 3d graphics, so if you turn off the "speed tree" your not just
switching to "slow tree" your turning off tree leaves completely, since
all of the leaves are "Speed Tree Leaves". Atleast thats what happened
in my other Unreal 3 Engine game. If you want all the trees in the game
to look dead like its winter, then you can set this to false.
SpeedTreeFronds= Same as speedtreeleaves, except its for fronds, which are like giant leaves, like on a palm tree.
OnlyStreamInTextures= Texture steaming is an Unreal 3 Engine aspect I
still havent fully wrapped my head around. I understand what it does but
I'm not sure how to change [TextureStreaming] settings to improve
performance. Texture streaming is supposedly used for console games that
need to keep popping new textures up on the fly without loading
screens. But what this option does is it keeps Textures streaming, but
makes all other streaming things (like animations and models?) load up
before hand, instead of streaming in. So turning this option on should
theoretically increaase Zone/Map load time, but how it effects TERA, im
not sure. Just keep it at the default.
LensFlares= Post processing effect that makes your screen glare if you
look directly at a light source such as the sun. Not sure if it works in
TERA, because I never left the noob island lol.
FogVolumes= This is a purely graphical option that allows a fog layer to
be added to an area. The fog is not lots of particle effects, its just a
transparent colored volume, that can change density. So you can turn
this setting off, and still see the mist of the waterfalls in TERA. So I
haven't encountered any fog volume yet. I am not sure how GPU tasking
fog volumes are, but if your struggling for FPS and your GPU is your
bottleneck, you can turn this off.
FloatingPointRenderTargets= Changing this from its default setting just
causes all the models and graphics to become fubar, so dont change it.
OneFrameThreadLag= This setting is supposed to alter the synchronization
between your CPU and GPU. In my Unreal 3 Engine shooter game, turning
it on has no effect, but Im usually at 40-70 fps in that game. But in
TERA, I get like a 5-10 FPS boost from having this set to on. My CPU is
my bottleneck so it increased FPS for me. Maybe if your CPU is really
good and your GPU sucks, try changing it to off and see if there is any
improvement?
OneFrameGPULag= Not entirely sure if this line works with TERA, but its
kind of like the opposite of the OneFrameThreadLag line, it might
improve performance in some situation.
UseVsync= This is just the game client's way of telling your graphics
card to use Vsync or not. Your Nvidia Control panel's setting will
always override the software's setting. But if a game has a Vsync
setting like this, I think its always good practice to enable it here,
and tell your graphics card "applicaton-controlled". Rather then turning
this off and forcing it with the GPU.
Vertical Sync takes your framerate and syncronizes it up with the
refresh rate of your monitor, to get rid of tearing. Tearing mostly
occurs when your framerate is above your monitors refresh rate and you
turn your view quickly. Sometimes looking at white light next to a dark
surface and turning can make tearing very pronounced. Tearing is just a
visual issue and your game client's performance is not affected by it.
Vsync can also be used to cap a game's max framerate, which can help
keep your graphics card cooled for places where you get super high FPS,
like loading screens or character logins. Remember if you turn this on
you should also enable Triple buffering through your graphics card menu.
Vsync may slightly lower your FPS, but it should be minimal if you use
Triple buffering. However, enabling these two slows down your mouse
input time, so for First Person Shooters, where you need instant mouse
movement, Vsync and Triple Buff are no-no's. TERA is pretty action based
so, if your an archer or caster, you might want to turn vsync off.
Fullscreen= Windowed mode vs Fullscreen
AllowD3D10= Allows the engine to use Direct X 10 or not. Keep this setting off.
AllowD3D11= Allowsthe engine to use Direct X 11 or not. Keep this setting off.
SkeletalMeshLODBias= This setting goes from -1 to 4. 4 being the most
jagged models and -1 being the most round, high polygon models. Not sure
if it works for TERA, since TERA has a built in character model polygon
option in the S1Option.ini file.
ParticleLODBias= Same as Skeletal Mesh LOD bias, except it applies to
spell effects / particle effects. Having this option higher may actually
make some aspects of spell effects dissapear.
DetailMode= This is a setting for 0, 1, or 2. Higher being more flashy
stuff. In my other game, the higher the detail level, the more
background decorations there are, such as extra decals etc. So if your
squeezing for performance, set it to 0. If you want to see the game in
all its glory, set it to 2.
ShadowFilterQualityBias= Never noticed a difference changing this option
around, but Ive only got a 1400x900 monitor. So maybe people with
really high resolutions will be able to see better quality shadows with
this set higher. It goes from -1 to 2 (maybe higher). -1 being the best
performance, crappiest shadows. I can't tell a difference when I change
it on any game so I keep it at -1.
MaxAnisotropy= Game client's way of changing your graphics cards texture
filtering. 0x 2x 4x 8x 16x Anisotropy. When textures are viewed from an
angle, they become blurred. Texture filtering cleans the blur up and
makes them look more natural as they should. If your new to this setting
wikipedia it or google it and you'll get a better explenation.
MaxMultisamples= This is Unreal 3 Engine's built in Anti Aliasing
capability. TERA has it at 1 as default, but changing it makes no
difference in TERA. Where as in my other Unreal 3 game, I can increase
the Multisample rate and Aliasing goes away, but the FPS hit is uber
uber huge. Basically, Unreal 3 Engine scales very poorly with
multisampling, so this option might be locked into the client or
something. In the next section I will talk about how to get good and
fast Anti Aliasing.
MinShadowResolution= Shadow resolution affects how blocky your shadows
appear. Shadows are created by shooting lots of square beams from a
point down onto the game world, and whatever beams are intercepted, show
up as black squares on the surface. The higher the shadow resolution,
the higher the X by X grid of beams shot down is. So with a shadow
resolution of 8, you will shoot 8x8=64 beams down onto the world. 512
resolution, you will get 512x512 beams shot down. Since it multiplies
like this, everytime you increase the shadow resolution, it increases
the GPU intensity of the calculations, exponentially. In other words, a
resolution of 128 will look twice as pixelated as a 256 resolution, but
it will take FAR less then 50% the computing power. So if shadows are
killing your FPS, turn these resolutions down a bit and see if it helps.
MaxShadowResolution= From what I've seen, most of the shadows you see in
the game will be based on MaxShadowResolution, not Min.. so this is the
important option to alter. TERA defaults it to like 2048 or something,
but you can change it down to like 256 or 512, and barely notice the
difference during normal play. If you zoom in on the shadow and stare at
it, yes you will see a difference. But when your playing and moving
around alot, you wont notice 512 vs 2048. So turn this down if you want
more FPS. Make sure MinShadowResolution is set equal to or lower then
this.
ShadowFadeResolution= No idea how this setting works, I've played with
it in different games and I wasn't able to see any change in shadow
intensity or shape, or fade distance or anything.
ShadowFadeExponent= No idea how this setting works, I've played with it
in different games and I wasn't able to see any change in shadow
intensity or shape, or fade distance or anything.
ShadowTexelsPerPixel= I am not entirely sure what the definition of this
setting is, but I'll tell you what I've experienced it as. Let say
there is a huge mob and a small mob. If the huge mob is stand next to
the small mob, and your looking at them both, the huge mob will have a
very large shadow compared to the small mob. But if the huge mob is far
away, its possible that the large mobs shadow will be equally as big( in
pixel count) as the small mob's shadow. So what this option does is it
changes not how far you see shadows, or how many shadows you see, but
how many pixels on your screen shadows will take up. So if you set this
sufficiently high, you will see almost every shadow from every creature.
But if it isnt high enough, you will start to see the very smallest
(pixel count) shadows no longer render. So to define this line in other
words it could be called "Amount of screen space taken up by rendered
shadows". Larger shadows taking precidence.
FoliageDrawRadiusMultiplier= Tried changing this around and it had no
effect whatsoever, this option is probably null since there is a foilage
slider in the S1Options.ini
bEnableVSMShadows= No idea what this does, and everything googled about it hasn't been able to explain it.
bEnableBranchingPCFShadows= No idea what this does, and everything googled about it hasn't been able to explain it.
bAllowBetterModulatedShadows= This setting is supposed to help older
graphics cards render shadows easier, but for newer cards from like the
8800 GT and up your supposed to leave it as false. So just keep it at
the default.
AllowSubsurfaceScattering= This setting allows membranes that can
conduct light (such as human skin) to conduct it and then expel it. I
think it may also allow light rays to refract from going through water,
but I haven't seen anything in any of my games yet. So just keep this
option at default, or false for performance.
bEnableForegroundShadowsOnWorld= No idea what this setting does, or if
it works, I've tried changing it and I've not seen any difference in
shadows, dynamic or static.
bEnableForegroundSelfShadowing= No idea what this setting does, or if it
works, I've tried changing it and I've not seen any difference in
shadows, dynamic or static.
ShadowFilterRadius= This setting takes your dynamic shadows, splits them
into two parts, and offsets them from eachother. The default is 2.0
which blurs the edges of the shadows. But if you set it to 0.0 it will
create no offset / no blur. And your shadow will look cleaner, but the
pixelation will be more visible. I set it to 10.0 and the two shadow
halves split apart from eachother so far that I could see two of my
sword hilt's shadows on the ground. So keep this setting somewhere
between 0.0 and 2.0. There should be no impact on performance, its just a
visual preference thing. Clean blocky shadow outlines, or blurred
smooth shadow outlines.
ShadowDepthBias= This setting defaults at 0.012 on both of my Unreal 3
games. And there is no reason to alter it, I don't believe there is any
performance gain from altering it. I can't explain how it works exactly,
but to summarize, the higher the value, the less volume of a shadow
will appear unless you move your camera closer to the shadow. For
example: if you change it to 0.03 you will see some of the chunks of
shadows, from different parts of the model's shadow, but if you zoom in
closer, you will see more of the shadow. Basically just leave it at
0.012, I didn't see any performance gain by changing it to 0.2 / 0.3.
FXAA= Turns on the FXAA injector, a type of Anti aliasing method, but it
doesn't seem to change anything in TERA if set to true or false. it
might be overridden by the "Light enrichment 1 > 2" setting change.
Light Enrichment 2 looks like FXAA.
SpeedTreeBranches=
SpeedTreeBillboards= Haven't played with either of these options, they
weren't in my other game, but I assume they do the same thing as the
SpeedTreeLeaves command, but with branches etc.
EnableHighPolyChars= I found this command on a forum, not sure if it
works or not on TERA. But if your trying to get better performance, you
might want to add this line to your [SystemSettings] section and put it
to false.
bAllowWholeSceneDominantShadows= Dynamic shadows are produced by
mobs/players moving around. Dynamic shadows can also be produced by
buildings/terrain/trees. In my other game, turning this to false would
give me a good FPS increase, with no change in visuals. Because setting
it to false would change the terrain/tree shadows from dynamic shadows,
to shadowmap version. (Permanent static shadow, on the ground). I keep
this setting at false, and it doesn't get rid of any shadows, but
improved FPS.
UpscaleScreenPercentage=True
ScreenPercentage=100.000000 These two lines of code function together.
There are two aspects of your screen display in the game: there is the
3d models and world. And there is the 2D user interface (UI) laid ontop
of it. Have you ever wanted to decrease your game resolution, but not
your interface? Well thats what this line does. I have a 1400x900
resolution monitor, if I set game to 1200x700 or whatever it is, my game
will stretch that resolution out. With these lines of code, you can do
that same effect, but maintain your User Interface at your native
resolution. Resolution has a very large impact on performance. So if
your desperate for some extra FPS and your GPU is your bottleneck, you
could set your ScreenPercentage to 50.0 or 75.0 and keep
UpscaleScreenPercentage as true, and you would have the performance of
that lower resolution, but still keep your UI's native resolution
intact. You can use this setting as a way to deal with the
shimmery/pixelated look of transparent textures like flowers and grass.
If you set your screenpercentage to like 95.0 or 97.0 it will just
barely stretch out your game, and get rid of the shimmery pixel effect.
It will basically do kind of what the "Lighting Enrichment 2" option
does, blur the poop out of everything, including nameplates. But not
your UI.
TEXTUREGROUP_World=(MinLODSize=1,MaxLODSize=4096,L ODBias=0)
There is a large group of settings like this TEXTUREGROUP one above, but
changing them does nothing. I think they are overridden by the
S1Options.ini texture slider option. So don't bother changing these
around.
bAllowLightShafts= This setting does not come in TERA's file by default,
but it works in my other Unreal3 Engine game. It turns on Godrays /
light rays that you see when looking toward the sun behind a tree or
building, etc. I don't know if it works for TERA, but might as well
throw it in the .ini file and set it to true in case it does, because
its very very pretty,
---------------------------------------------------------
ANTI ALIASING:
In order to get the highest quality and fastest FPS Anti aliasing, you
need to download Nvidia Inspector, (sorry ATI users i dont know if there
is an equivalent). Open it up and click on the little wrench and poker
icon on the middle right side of it. This will show you a more robust
and advanced form of the "Nvidia Control Panel." On the top left look
for the TERA profile, and once you select it, change the "Anti Aliasing
Compatibility" line to:
0x000100C5 (Brother in Arms: Hell's Highway, Gears of War, etc...)
What I did was went to the wikipedia page and found all of the games
that use Unreal Engine 3 that are listed in the AA compatiblity section.
I ran my TERA client with each compatibility setting and some of them
gave much better framerates then others. Here is a run down of how each
compare, if En Masse is interested:
(FPS was taken from character login screen with 4x AA, and 4x (supersample) transparent AA)
0x00000041 = 51 FPS
0x00000045 = 52 FPS
0x00000145 = 26 FPS
0x000100C5 = 65 FPS
0x00020041 = 51 FPS
0x080100C5 = 62 FPS + artifacts/visual glitch
I read a thread about forcing AA and someone said they used the 0000145
option, which is what I originally did, but it gave me such a massive
FPS hit compared to no AA. But once I tested them all and found the
0x000100C5 option, it runs smooth as butter. Its astonishing to me that
changing one little option can double my FPS with forced AA.
So some of you might ask, "Why force AA when you can just change
"Lighting Enrichment" option to 2 and get it." Well that is not real AA.
Its just blurring everything. Go up to a player and look at their
nameplate, set Enrichment to 1, then change it to 2. Their nameplate
will get blurry and difficult to read unless your right up next to them.
There is no FPS loss to my knowledge from turning Enrichment 2 on. But
all it is doing is just blurrying your game, minus the interface. That
is not a good solution to aliasing.
So, if you want to have any real form of AA and you are an Nvidia user,
you have to set AA compatiblity to 0x000100C5 in the Nvidia Inspector.
En Masse if you're reading this, I'd recommend you give the players a
real AA option and use this hex code. The lighting enrichment crap won't
cut it.
----------------------------------------------------------------------------------------
Multi-GPU / SLi:
I was astonished to find nearly NO search results when typing in "TERA"
and "SLi" I think there was only one thread I found on a random website,
and it strayed off topic before giving much info. So I had to fiddle
with the compatibility setting to see if Nvidia had truly selected the
correct SLi profile.
Nvidia has a profile for TERA, on their latest Driver 295.73. They might
of made a profile before this driver, I'm not sure. But in Nvidia's
TERA profile, it has SLi compatiblity set to:
0x02400005 (Dragon Age: Origins, X2 the Threat, Dead Space, etc)
Now the reason this is odd, is because my other Unreal 3 Engine game,
which is in open beta too, runs SLi perfectly fine on my dual GTX460's.
And it's SLi compatibility hex code is 0x00000000. Which means, the game
by itself will run SLi fine by default. But TERA requires a
compatibility code and its the same game engine. So I again looked up
all of the SLi compatibility hex codes that included a Unreal 3 Engine
game in it, and wrote them down. I tested each compatibility type inside
the game, standing on a cliff looking down onto a big area with mobs
etc. But with no moving objects on my screen, so I'd have a very steady
framerate. Here are the FPS results:
0x02400005 (default) = 54 FPS
0x0240000D = 58 FPS
0x02400045 = 57 FPS
0x02402005 = 56 FPS
0x02402045 = 55 FPS
0x02402185 = 58 FPS
0x02402205 = 47 FPS
0x02402405 = 55 FPS
0x02406405 = 56 FPS
0x02C00045 = 56 FPS
0x03402405 = 55 FPS
0x42402005 = 55 FPS
After all this testing, I concluded that no other compatibility setting
exceeded the default enough to warrant changing it. So I left it at the
default, and gave Nvidia the benefit of the doubt.
The really odd thing about the 0x02402205 setting, is that it got a much
lower FPS in the actual game, looking down from the cliff, at 47 FPS.
But at the character login screen, it got 131-136 FPS, where as all the
other settings got 94-96 FPS at the character login screen. Which is
very very wierd. So I guess 0x02402205 is really good at SLi when there
is a very small amount of 3d on your screen, but when it gets bogged
down with whole scenes, it handles it worse then all the others. This is
why I threw out the those Login screen numbers, because it isn't as
real of a test as the actual game is.
So, in summary, there is no need to change the SLi compatibility setting
as of now. There could be a better profile, but I haven't found it, and
its not an Unreal 3 Engine game compatibility setting, so good luck
finding it.