GTA 4

VoLk

Пользователь
да нет... это скорее скрин) в сан андреасе как вы помните фона не было.
Город обещают достаточно большой.
 

komm

Пользователь
в 4 части мир по площади будет меньше...но насыщен он будет значително больше. здесь не будет полу-пустых районов...

судя по этой картинки город будет оч. большойB)) или это фон??
на картинке не фон! такая далная прорисовка обещана разработчиками...
 

Krechmar

Новичок
млин жалко что у мя такая банка ржавая что фиг в GTA4 погамаеш(
Ребята стараются на славу главное чтоб ето были скрины с игры а не обработанные арты))
 

robot

Человек без чувств есть Робот.
Комм что-нибудь извесно про версию шрейдеров. Вторые будут в ходу?
 

VoLk

Пользователь
:angry: ШРЕЙДЕРЫ??? ;) лол ржунемагу...
робот, может ШЕЙДЕРЫ?(Shader)

сори за флуд... а зачем вам собсно знать версию шейдеров? достаточно знать на какой карте пойдт и все :D

ну я думаю не ниже 2,5,1 B))))
кстати скажите челу из леса, на сегодняшний день максимальная какая?
 

pr0fet

Новичок
сори за флуд... а зачем вам собсно знать версию шейдеров? достаточно знать на какой карте пойдт и все B)

ну я думаю не ниже 2,5,1 :angry: )))
дело не в том, какая версия...
а в том, что развелось куча "умников", которые оперируют известными понятиями, не зная, что они означают(как у Чехова в Обезьяннем Языке), так пусть хотя бы поймет, что значит понятие, прежде чем использовать, к сведению скажу что ни по одному скриншоту не скажешь "какую версию шейдеров" использует приложение, или некоторые думают, что есть у нас графический движок, мы возьмем к нему и "прикрутим шейдеры" и будет красивая графа???

вот это шейдер

[codebox]
#include "Common.usf"

#ifndef NUM_SAMPLES
#define NUM_SAMPLES 5
#endif


/*=============================================================================
* Vertex Shader
*============================================================================*/

void MainVertexShader(
float4 InPosition : POSITION,
float2 InScreenUV : TEXCOORD0,
out float4 OutScreenPosition : TEXCOORD0,
out float4 OutPosition : POSITION
)
{
OutPosition = InPosition; // Target position
OutScreenPosition = float4(InPosition.xy,InScreenUV); // Background UV and position
}


/*=============================================================================
* Pixel Shader
*============================================================================*/

float4 RenderTargetClampParameter;

float2 ClampUV(float2 UV)
{
// SM2 currently doesn't support correctly clamped motion blur (not enough instructions)
#if !SM2_PROFILE
// Clamp the sampling UVs to avoid sampling from outside viewport region
// (hence render target size can be bigger than viewport region)
UV.x = clamp(UV.x, RenderTargetClampParameter.x, RenderTargetClampParameter.z);
UV.y = clamp(UV.y, RenderTargetClampParameter.y, RenderTargetClampParameter.w);
#endif
return UV;
}

sampler2D VelocityBuffer;
float4x4 ScreenToWorld;
float4x4 PrevViewProjMatrix;

float4 StaticVelocityParameters = { 0.5f, -0.5f, 16.0f/1280.0f, 16.0f/720.0f };
float4 DynamicVelocityParameters = { 2.0f*16.0f/1280.0f, -2.0f*16.0f/720.0f, -16.0f/1280.0f, 16.0f/720.0f };

void MainPixelShader( float4 ScreenPosition : TEXCOORD0, out float4 OutColor : COLOR0 )
{
half2 PixelVelocity;
half2 NominalVelocity;

// NOTE: Maximum value for an fp16 depth-value is 65504.
float2 ScreenUV = ScreenPosition.zw;
half2 DynamicVelocity2D = tex2D( VelocityBuffer, ScreenUV ).xy;

// 0.0f (-1.0f after scale-and-bias) in the velocity buffer has special meaning. It means "use static background velocity".
// Velocity rendering clamps to 1/255, so every pixel it touches will fail this check.
half Selector = DynamicVelocity2D.r;
if ( Selector > 0.0f )
{
// Scale dynamic velocity from [-1,+1] to [-MAX_VELOCITY,+MAX_VELOCITY] pixels
NominalVelocity = DynamicVelocity2D * 2.0f - 1.0f;
PixelVelocity = NominalVelocity*DynamicVelocityParameters.xy;
}
else
{
half CurrDepth = min( CalcSceneDepth( ScreenUV ), 65504);
if ( CurrDepth < 14.0f )
CurrDepth = 65504.0f;
float4 ProjectedPosition = float4( ScreenPosition.xy * CurrDepth, CurrDepth, 1 );
float4 PrevScreenPosition = MulMatrix( PrevViewProjMatrix, ProjectedPosition );
PrevScreenPosition.xy /= PrevScreenPosition.w;

// Scale static velocity from projection space to texel space and clamp to +/- MAX_VELOCITY pixels.
half2 StaticVelocity = ScreenPosition.xy - PrevScreenPosition.xy;
PixelVelocity = clamp( StaticVelocity*StaticVelocityParameters.xy, -StaticVelocityParameters.zw, StaticVelocityParameters.zw );

NominalVelocity = PixelVelocity/StaticVelocityParameters.zw;
}

// Make it nicely curved.
half Scale = dot(NominalVelocity, NominalVelocity);
PixelVelocity *= Scale;

// Average NUM_SAMPLES screen colors along the velocity vector.
half2 Step = PixelVelocity / NUM_SAMPLES;
ScreenUV -= 2*Step;
half3 Color = tex2D( SceneColorTexture, ClampUV(ScreenUV) ).rgb;
UNROLL for ( int i=1; i < NUM_SAMPLES; ++i )
{
ScreenUV += Step;
Color += tex2D( SceneColorTexture, ClampUV(ScreenUV) ).rgb;
}

OutColor = RETURN_COLOR( float4(Color/NUM_SAMPLES, 1) );// + float4(PrevColor,0)
}

void MainPixelShaderDynamicVelocitiesOnly( float4 ScreenPosition : TEXCOORD0, out float4 OutColor : COLOR0 )
{
half2 ScreenUV = ScreenPosition.zw;
half2 DynamicVelocity = tex2D( VelocityBuffer, ScreenUV ).xy;

// 0.0f (-1.0f after scale-and-bias) in the velocity buffer has special meaning. It means "use static background velocity".
// Velocity rendering clamps to 1/255, so every pixel it touches will fail this check.
half Selector = DynamicVelocity.r;
if ( Selector == 0.0f )
{
// Scale velocity from [-1,+1] to [-MAX_VELOCITY,+MAX_VELOCITY] pixels
half2 Velocity = DynamicVelocity * 2.0f - 1.0f;
half Scale = dot(Velocity, Velocity);
half2 PixelVelocity = Velocity*DynamicVelocityParameters.xy;
PixelVelocity *= Scale;

half2 Step = PixelVelocity / NUM_SAMPLES;
ScreenUV -= 2*Step;
half3 Color = tex2D( SceneColorTexture, ClampUV(ScreenUV) ).rgb;
UNROLL for ( int i=1; i < NUM_SAMPLES; ++i )
{
ScreenUV += Step;
Color += tex2D( SceneColorTexture, ClampUV(ScreenUV) ).rgb;
}
OutColor = RETURN_COLOR( float4(Color/NUM_SAMPLES, 1) );
}
else
{
float3 Color = tex2D( SceneColorTexture, ScreenUV ).rgb;
OutColor = RETURN_COLOR( float4(Color, 1) );
}
}
[/codebox]
 

komm

Пользователь
«Оружие и аптечки не парят над землей. Они лежат на поверхностях в ожидании, когда их подберут. Rockstar Games изначально даже не хотели, чтобы они светились, так как это противоречит реальности. Но концепция GTA 4 предполагает то, что игроки должны легко находить предметы, которыми они могут завладеть в этом мире».

«GTA IV в меньшей мере выглядит как видеоигра, потому что больше нет заставок «Миссия выполнена», вылетающих на экран, как в старых играх. Только лишь краткая музыкальная заставка, говорящая об успешном выполнении работы. В правом верхнем углу все еще показывается, какое оружие и сколько денег на руках у игрока, но эти изображения очень маленькие и монохромные. Это не отвлекает глаз геймера».

«Мы взяли вертолет и быстро полетели над городом. Пейзаж показывался видом из кабины, и был виден высокодетализированный Либерти Сити, стремительно проплывающий внизу. Скорость была большой, поэтому негодность к употреблению реактивных самолетов, находящихся в аэропорту, не вызывала сожаления.

Главным образом мы использовали вертолет для приземления на небоскребах или оживленных улицах. Лопасти волшебным образом никого не травмировали, несмотря на то, что приземление такого рода нельзя назвать безобидным».
 

komm

Пользователь
режимы мультиплеера:
Hangmans NOOSE
Car Jack City
Bomb da Base
Bomb da Base II
Mafia Work
Team Mafia Work
Deathmatch
Team Deathmatch
Turf War
Cops N Crooks
Race
GTA Race
Deal Breaker
Free Roam
таааак...чую осенью будут баталии)
 

Killar

Имеет право
Блин, вот смотрю на скрины..да, вроде красиво, да, вроде стильно..но такое ощущение, что что-то недоделано :mellow: Вот, например, на скрине, где глав. герой из машины с пистолетом высовывается, дырки от пуль на лобовом стекле выглядят..не очень, скажем так :rolleyes: А там, где показан порт...машины как в предыдущих частях..и расстояние между машинами, как линейкой измеряли, одинаковое..нереально :)
 
Сверху