Esempio n. 1
0
/*
** R_BuildCloudData
*/
void R_BuildCloudData( shaderCommands_t *input )
{
    //int			i;
    shader_t	*shader;

    shader = input->shader;

    assert( shader->isSky );

    sky_min = 1.0 / 256.0f;		// FIXME: not correct?
    sky_max = 255.0 / 256.0f;

    // set up for drawing
    tess.numIndexes = 0;
    tess.numVertexes = 0;

    if ( shader->sky.cloudHeight )
    {
        // From WolfET:
        // ok, this is really wierd. it's iterating through shader stages here,
        // which is unnecessary for a multi-stage sky shader, as far as i can tell
        // nuking this
#if 0
        for ( i = 0; i < MAX_SHADER_STAGES; i++ )
        {
            if ( !tess.xstages[i] ) {
                break;
            }
            FillCloudBox( shader, i );
        }
#else
        FillCloudBox( shader, 0 );
#endif
    }
}
Esempio n. 2
0
/*
** R_BuildCloudData
*/
void R_BuildCloudData( shaderCommands_t *input )
{
	int			i;
	shader_t	*shader;

	shader = input->shader;

	assert( shader->isSky );

	sky_min = GFIXED_1 / GFIXED(256,0);		// FIXME: not correct?
	sky_max = GFIXED(255,0) / GFIXED(256,0);

	// set up for drawing
	tess.numIndexes = 0;
	tess.numVertexes = 0;

	if ( FIXED_NOT_ZERO( input->shader->sky.cloudHeight ))
	{
		for ( i = 0; i < MAX_SHADER_STAGES; i++ )
		{
			if ( !tess.xstages[i] ) {
				break;
			}
			FillCloudBox( input->shader, i );
		}
	}
}
Esempio n. 3
0
static void BuildCloudData()
{
	int      i;
	shader_t *shader;

	shader = tess.surfaceShader;

	assert( shader->isSky );

	sky_min = 1.0 / 256.0f; // FIXME: not correct?
	sky_max = 255.0 / 256.0f;

	// set up for drawing
	tess.multiDrawPrimitives = 0;
	tess.numIndexes = 0;
	tess.numVertexes = 0;

	if ( tess.surfaceShader->sky.cloudHeight )
	{
		for ( i = 0; i < MAX_SHADER_STAGES; i++ )
		{
			if ( !tess.surfaceStages[ i ] )
			{
				break;
			}

			FillCloudBox( tess.surfaceShader, i );
		}
	}
}
Esempio n. 4
0
/*
** R_BuildCloudData
*/
void R_BuildCloudData( shaderCommands_t *input )
{
	int			i;
	shader_t	*shader;

	shader = input->shader;

	assert( shader->isSky );

	sky_min = 1.0 / 256.0f;		// FIXME: not correct?
	sky_max = 255.0 / 256.0f;

	// set up for drawing
	tess.numIndexes = 0;
	tess.numVertexes = 0;

	//ri.Printf(PRINT_ALL, "^1cloudHeight %f\n", input->shader->sky.cloudHeight);

	if ( shader->sky.cloudHeight )
	{
		for ( i = 0; i < MAX_SHADER_STAGES; i++ )
		{
			if ( !tess.xstages[i] ) {
				break;
			}
			//ri.Printf(PRINT_ALL, "fill cloud box %d\n", i);
			FillCloudBox( shader, i );
		}
	}
}
Esempio n. 5
0
File: sky.c Progetto: icanhas/yantar
/*
** R_BuildCloudData
*/
void
R_BuildCloudData(shaderCommands_t *input)
{
	int i;
	material_t *shader;

	shader = input->shader;

	assert(shader->isSky);

	sky_min = 1.0 / 256.0f;	/* FIXME: not correct? */
	sky_max = 255.0 / 256.0f;

	/* set up for drawing */
	tess.numIndexes = 0;
	tess.numVertexes = 0;

	if(shader->sky.cloudHeight){
		for(i = 0; i < MAX_SHADER_STAGES; i++){
			if(!tess.xstages[i]){
				break;
			}
			FillCloudBox(shader, i);
		}
	}
}
Esempio n. 6
0
static void BuildCloudData()
{
	int      i;
	shader_t *shader;

	shader = tess.surfaceShader;

	assert( shader->isSky );

	sky_min = 1.0 / 256.0f; // FIXME: not correct?
	sky_max = 255.0 / 256.0f;

	// set up for drawing
	tess.multiDrawPrimitives = 0;
	tess.numIndexes = 0;
	tess.numVertexes = 0;

	if ( tess.surfaceShader->sky.cloudHeight )
	{
		for ( i = 0; i < MAX_SHADER_STAGES; i++ )
		{
			if ( !tess.surfaceStages[ i ] )
			{
				break;
			}

			FillCloudBox( tess.surfaceShader, i );
		}
	}

	// Tr3B: FIXME analyze required vertex attribs by the current material
	Tess_UpdateVBOs( 0 );
}
Esempio n. 7
0
static void R_BuildCloudData( shaderCommands_t* input )
{
	assert( input->shader->sort == SS_ENVIRONMENT );

	// set up for drawing
	tess.numIndexes = 0;
	tess.numVertexes = 0;

	if (!input->shader->sky.cloudHeight)
		return;

	for (int i = 0; (i < MAX_SHADER_STAGES) && tess.xstages[i]; ++i) {
		FillCloudBox( input->shader, i );
	}
}
Esempio n. 8
0
/*
** R_BuildCloudData
*/
void R_BuildCloudData( shaderCommands_t *input ) {
	int i;

	assert( input->shader->sky );

	sky_min = 1.0 / 256.0f;		// FIXME: not correct?
	sky_max = 255.0 / 256.0f;

	// set up for drawing
	tess.numIndexes = 0;
	tess.numVertexes = 0;

	if ( input->shader->sky->cloudHeight ) {
		for ( i=0; i<input->shader->numUnfoggedPasses; i++ )
			FillCloudBox( input->shader, i );
	}
}