Simul Weather video

Saturday, September 5th, 2009

This is one of the most awesome uses Simul Weather has been put to!


Intel middleware gallery

Wednesday, September 2nd, 2009

Intel Core i7 IntelĀ®, the leading maker of computer hardware, have featured Simul Weather in their Middleware Gallery. Simul Weather is fully compatible with the latest Intel multi-core processors, featuring optional support for Threading Building Blocks – find out more here.

Help that helps

Tuesday, August 11th, 2009

Simul Weather version 1.4.0 is ready to hit, it’s uploading overnight. There are numerous improvements, but the best new feature is that every page of the help file has a web-form that sends us direct feedback about the documentation.

help_that_helps


Dark Clouds

Monday, August 3rd, 2009

DarkBASIC is a complete game-development system aimed at the amateur-to-professional developer.

We’ve put together a version of Simul Weather for DarkBASIC – it has a few limitations that aren’t in the main product. It’s called DarkCLOUDS is now available from The Game Creators – find it here.

DarkCLOUDS2


Going from DX9 to DX10

Monday, July 27th, 2009

Going from DirectX 9 to DirectX 10 in C++:

DX10 (at least the version of August 2007) seems to really dislike rendering to buffers that aren’t powers of two – e.g. rendering to a HDR buffer that’s 1280 by 720!

Here’s a table of roughly corresponding DX9 and DX10 expressions:

D3DFORMAT -> DXGI_FORMAT
D3DFMT_… -> DXGI_FORMAT_…
D3DUSAGE_… -> D3D10_USAGE_…
D3DVERTEXELEMENT9 -> D3D10_INPUT_ELEMENT_DESC
CreateVertexDeclaration -> CreateInputLayout
OnLostDevice -> not used?
D3DXCreateTexture -> ID3D10Device::CreateTexture1D, CreateTexture2D
D3DXCreateVolumeTexture -> ID3D10Device::CreateTexture3D
LockRect -> Map
UnlockRect -> Unmap
D3DLOCKED_RECT -> D3D10_MAPPED_TEXTURE2D
D3DLOCKED_BOX -> D3D10_MAPPED_TEXTURE3D
SetVertexDeclaration -> IASetInputLayout
ID3DXEffect::SetTexture -> ID3D10EffectShaderResourceVariable::SetResource
ID3DXEffect::SetVector -> ID3D10EffectVectorVariable::SetFloatVector
ID3DXEffect::SetFloat -> ID3D10EffectFloatVariable::SetFloat
D3DQUERYTYPE_ -> D3D10_QUERY_DESC
D3DXCreateTextureFromFile -> D3DX10CreateTextureFromFile
LPDIRECT3DSURFACE9, IDirect3DSurface9 * -> ID3D10RenderTargetView*, ID3D10DepthStencilView*
LPDIRECT3DTEXTURE9, IDirect3Texture9 -> ID3D10Texture1D, ID3D10Texture2D
D3DXHANDLE (for shader variables) -> ID3D10EffectScalarVariable*, ID3D10EffectVectorVariable*, etc.
LPDIRECT3DQUERY9, IDirect3DQuery9* -> ID3D10Query*
vs_1_1, etc. -> Not Supported
technique -> technique10
cullmode=none -> SetRasterizerState( RenderNoCull );
ZEnable = true; -> SetDepthStencilState( DisableDepth, 0 );
AlphaBlendEnable = false; -> SetBlendStateNoBlend, float4( 0.0f, 0.0f, 0.0f, 0.0f ), 0xFFFFFFFF );

Simul Weather SDK 1.2 Released

Tuesday, June 2nd, 2009

Version 1.2 of our award-winning weather software is now available.

Simul Weather allows developers to generate real-time weather effects, including 3D volumetric clouds that grow and change in real time, with minimal CPU and GPU overhead. Already in-use in several major upcoming titles, Simul Weather saves many man-hours of effort for any developer looking to include live time-of-day effects, as well as generating a sky that just looks right.

seq2 seq3 seq4
Real-time images from Simul Weather 1.2, including sky, clouds, haze and fade tables.

Many companies expend a lot of effort on getting their sky looking right and end up with a compromised solution that uses unnecessary clock cycles. After 3 years’ research, our skies are physically correct, look like the real thing, and use a fraction of the system resources that most home-grown solutions do.

New features in version 1.2 include managed fade tables – for physically correct distance-fades that match seamlessly with the sky. Also included, optional threading support from Intel Threading Building Blocks – to distribute sky calculations over multiple cores.

As ever, the SDK includes clear, simple sample programs using DirectX and OpenGL, and drop-in source code for sky and cloud renderers. Available on PC and major console platforms, Simul Weather can be evaluated for free. Contact enquiries@simul.co.uk, or go to www.simul.co.uk/weather/licensing for details.


CloudWright 1.8

Friday, May 29th, 2009

CloudWright 1.8 is now available for download. There are lots of improvements, including a neat feature that lets you script your own exports.


Notes on the sky

Tuesday, May 26th, 2009

The best way to get a good-looking sky in your game or simulation is to use Simul Weather. But those who have an interest in such things, and time to spare might like to try writing their own sky scattering model. The first place to go in this case is usually to the 1999 paper on scattering by Preetham et al., where the basics of Mie and Rayleigh scattering are outlined.

Scattering is the process that turns the sky blue – light passing through air is scattered away from its direction of travel. Blue light is scattered more than green and red, so the sky is blue, and distant objects acquire a blue cast. But any light that was travelling towards the viewer to begin with is also scattered – again, more blue than red and green – so distant clouds can appear yellow, and the sun at dawn appears red.

Implement the Preetham model and you’ll get the basics of a blue sky with a bright horizon. You’ll need to include both Mie and Rayleigh scattering to get the right effect, and some of the more obscure terms are necessary to get the right look for twilight – plain Rayleigh scattering turns the whole sky yellow at sunset, which is quite a common look in games, but practically unheard of in reality. You may also find that the horizon is too bright, and the zenith too dark, even in daylight.

The yellow twilight effect is actually not a failing of the model, so much as the “blue twilight effect” is an additional quality of the sky that can’t be modelled with single Rayleigh or Mie scattering alone. You need to bring in some of the more advanced properties of the atmosphere to get the correct, blue sky at twilight. The over-bright horizon, and dark zenith are much simpler to correct. It’s not your model that’s at fault, it’s your monitor.


Simul Weather licensing information

Monday, May 18th, 2009

Rather than informing people on an individual basis, I decided to put the costs for licensing Weather up on a page of this site. There’s also a neat little form for licensing enquiries, so there’s really no reason not to get in touch!

Evaluating Simul Weather is really very straightforward – you put the libraries in the right place, cut-and-paste the sample code and you’re away. We’re confident this is some of the easiest middleware to use, and we’re always looking for feedback.


CloudWright for XSI – try it now!

Wednesday, May 6th, 2009

We’ve got CloudWright for XSI in open alpha – this means it’s a very early version, but the main features are in, including live sky previews in DirectX. You can download it from here.