1
0
mirror of https://github.com/thes3m/XNI synced 2024-12-26 13:26:06 +01:00
Matej Jan d5b2897d8b Added 3D Model support.
git-svn-id: http://xni.googlecode.com/svn/XNI@42 ac433895-eea3-a490-d80a-17149a75e588
2010-11-30 23:26:03 +00:00

62 lines
1.4 KiB
Objective-C

//
// RasterizerState.m
// XNI
//
// Created by Matej Jan on 16.9.10.
// Copyright 2010 Retronator. All rights reserved.
//
#import "RasterizerState.h"
#import "Retronator.Xni.Framework.h"
#import "Retronator.Xni.Framework.Graphics.h"
static RasterizerState *cullClockwise;
static RasterizerState *cullCounterClockwise;
static RasterizerState *cullNone;
@implementation RasterizerState
- (id) init {
self = [super init];
if (self != nil) {
cullMode = CullModeCullCounterClockwiseFace;
depthBias = 0;
fillMode = FillModeSolid;
multiSampleAntiAlias = YES;
scissorTestEnable = NO;
slopeScaleDepthBias = 0;
}
return self;
}
+ (void) initialize {
if (!cullClockwise) {
cullClockwise = [[RasterizerState alloc] init];
cullClockwise.cullMode = CullModeCullClockwiseFace;
}
if (!cullCounterClockwise) {
cullCounterClockwise = [[RasterizerState alloc] init];
cullCounterClockwise.cullMode = CullModeCullCounterClockwiseFace;
}
if (!cullNone) {
cullNone = [[RasterizerState alloc] init];
cullNone.cullMode = CullModeNone;
}
}
@synthesize cullMode;
@synthesize depthBias;
@synthesize fillMode;
@synthesize multiSampleAntiAlias;
@synthesize scissorTestEnable;
@synthesize slopeScaleDepthBias;
+ (RasterizerState*) cullClockwise { return cullClockwise; }
+ (RasterizerState*) cullCounterClockwise { return cullCounterClockwise; }
+ (RasterizerState*) cullNone { return cullNone; }
@end