private static void DeclareUniforms(CodeGenContext context, StructuredProgramInfo info) { foreach (int cbufSlot in info.CBuffers.OrderBy(x => x)) { string ubName = OperandManager.GetShaderStagePrefix(context.Config.Stage); ubName += "_" + DefaultNames.UniformNamePrefix + cbufSlot; context.CBufferDescriptors.Add(new BufferDescriptor(ubName, cbufSlot)); context.AppendLine("layout (std140) uniform " + ubName); context.EnterScope(); string ubSize = "[" + NumberFormatter.FormatInt(Constants.ConstantBufferSize / 16) + "]"; context.AppendLine("vec4 " + OperandManager.GetUbName(context.Config.Stage, cbufSlot) + ubSize + ";"); context.LeaveScope(";"); } }