Skip to content

Instantly share code, notes, and snippets.

@bazhenovc
bazhenovc / gist:8958746
Created February 12, 2014 16:16
Генератор бреда
# -*- coding: utf-8 -*-
###
### USSR-style speech generator v1.0
###
### License: WTFPL
###
import random
tier0 = ['Товарищи,', 'С другой стороны', 'Равным образом', 'Не следует, однако, забывать, что', 'Таким образом', 'Повседневная практика показывает, что']
<?xml version="1.0" encoding="UTF-8"?>
<PackageList>
<Package name="autoconf">
<HomePage>http://www.gnu.org/software/autoconf/</HomePage>
<Version value="2.69">
<URL>http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.xz</URL>
<MD5>50f97f4159805e374639a73e2636f22e</MD5>
</Version>
</Package>
vec4 ApplyColorGrading(vec4 color, in sampler2D ramp)
{
// 3d texture unwrapped to 256x16
vec2 offset = vec2(0.5f / 256.0f, 0.5f / 16.0f);
float scale = 15.0f / 16.0f;
// even and fractional parts of blue component
float blueInt = floor(color.b * 15.0) / 16.0f;
float blueFract = color.b * 15.0f - blueInt * 16.0f;
BulletManager manager;
std::atomic<int> signalQuit;
void Thread1()
{
while (signalQuit == 0) {
manager.Fire();
}
}
float CalcMipLevel(float2 inUV)
{
float2 uv = inUV * kAtlasedTextureSize;
float2 du = ddx(uv0);
float2 dv = ddy(uv0);
float d = max(dot(du, du), dot(dv, dv));
const float r = pow(2, (kMipCount - 1) * 2);
d = clamp(d, 1.0, r);
// GetFramePointer (ASM)
.globl GetFramePointer
GetFramePointer:
mov rp, fp
mov pc, lr
// Walk the stack
struct FramePointer
{
pointer_t FP;
#include "shaders/common/torque.hlsl"
struct VS_OUTPUT
{
float4 hpos : SV_POSITION;
float2 uv : TEXCOORD0;
};
@bazhenovc
bazhenovc / thread.cpp
Last active September 23, 2015 01:04
class Thread
{
public:
typedef void (*ThreadWorkerFunction)(void*);
void StartWorkerFunction(ThreadWorkerFunction func);
template <typename F, typename ...Args>
inline void Start(F&& func, Args&&... args)
{
namespace internal
{
template <typename R, typename ...Args>
struct FunctionImplBase
{
virtual FORCE_INLINE ~FunctionImplBase() {}
virtual R Invoke(Args... args) const = 0;
class Thread
{
private:
uint8_t storage[kThreadDataStorage];
public:
typedef void (*ThreadWorkerFunction)(void*);
void StartWorkerFunction(ThreadWorkerFunction func);