Get and Install Crimson Editor.

Put the following 3 files on the correct places:

* material.key under Crimson Editor\spec\
* material.spc under Crimson Editor\spec\
* extension.material under Crimson Editor\link\




SiENcE: not all keywords are in, but it should be better than nothing. feel free to add keywords.


material.key

[-COMMENT-:GLOBAL]
# OGRE3D MATERIAL LANGUAGE KEYWORDS FILE FOR CRIMSON EDITOR
# FIRST EDITED BY FLORIAN FISCHER^SiENcE on JULY 5TH, 2007
# UPDATED BY NILS on November, 11th, 2008
#
# KW0=INTRINSIC FUNCTIONS; KW1=DATA TYPES; KW2=KEYWORD; KW3=SEMANTICS

[KEYWORDS0:GLOBAL]
material technique pass texture_unit vertex_program_ref fragment_program_ref
shadow_caster_vertex_program_ref shadow_receiver_fragment_program_ref
shadow_receiver_vertex_program_ref

[KEYWORDS1:GLOBAL]
int half float float2 float3 float4 float3x3 float3x4 float4x3 float4x4
double worldviewproj_matrix ambient_light_colour light_position_object_space
light_diffuse_colour custom world_matrix_array_3x4 viewproj_matrix
light_specular_colour camera_position_object_space light_position
time

[KEYWORDS2:GLOBAL]
blend_diffuse_alpha src_texture src_current colour_blend on off alpha_blend none
clamp linear always_pass wrap bilinear trilinear point mirror once_per_light add
dest_colour zero replace combinedUVW spherical one separateUV cubic_reflection
HDR true false scale_x scale_y sine shadow PF_BYTE_LA Input time_0_x anisotropic
true false

# culling mode
clockwise anticlockwise front back

# blend modes
one zero dest_colour src_colour one_minus_dest_colour one_minus_src_colour dest_alpha
src_alpha one_minus_dest_alpha one_minus_src_alpha

# depth comparison
always_fail always_pass less less_equal equal not_equal greater_equal greater

# wave_xform
xform_type scroll_x scroll_y rotate scale_x scale_y
wave_type sine triangle square sawtooth inverse_sawtooth 
base frequency phase amplitude

# shading
flat gouraud phong

# polygon mode
solid wireframe points

# fog_override type
exp exp2

# iteration
once once_per_light per_light per_n_lights

# Pixel Formats (texture unit 'texture' semantic)
PF_L8 PF_L16 PF_A8 PF_A4L4 PF_BYTE_LA PF_R5G6B5 PF_B5G6R5 PF_R3G3B2 PF_A4R4G4B4 PF_A1R5G5B5
PF_R8G8B8 PF_B8G8R8 PF_A8R8G8B8 PF_A8B8G8R8 PF_B8G8R8A8 PF_R8G8B8A8 PF_X8R8G8B8 PF_X8B8G8R8
PF_A2R10G10B10 PF_A2B10G10R10 PF_FLOAT16_R PF_FLOAT16_RGB PF_FLOAT16_RGBA PF_FLOAT32_R
PF_FLOAT32_RGB PF_FLOAT32_RGBA PF_SHORT_RGBA 

[KEYWORDS3:GLOBAL]
param_named filtering cull_hardware cull_software depth_check texture
max_anisotropy tex_address_mode colour_op_ex alpha_op_ex
colour_op_multipass_fallback colour_op_ex set_texture_alias ambient diffuse
specular emissive scene_blend env_map lighting cubic_texture point_sprites
point_size point_size_attenuation depth_write alpha_rejection content_type
depth_func tex_coord_set param_named_auto iteration colour_op scheme scroll_anim
fog_override rotate_anim wave_xform


material.spc

# OGRE3D MATERIAL LANGUAGE KEYWORDS FILE FOR CRIMSON EDITOR
# FIRST EDITED BY FLORIAN FISCHER^SiENcE on JULY 5TH, 2007
#
$CASESENSITIVE=NO
$DELIMITERS=~`!@#$%^&*()-+=|\{}[]:;"',.<>/?
$KEYWORDPREFIX=#
$HEXADECIMALMARK=0x
$ESCAPECHAR=$QUOTATIONMARK1="
$QUOTATIONMARK2='
$LINECOMMENT=//
#$BLOCKCOMMENTON=/*
#$BLOCKCOMMENTOFF=*/
$INDENTATIONON={
$INDENTATIONOFF=}
#$PAIRS1=()
#$PAIRS2=[]
$PAIRS3={}


extension.material

LANGSPEC:MATERIAL.SPC
KEYWORDS:MATERIAL.KEY