2015-03-15 15:21:47 +00:00
|
|
|
<!DOCTYPE html>
|
|
|
|
<html>
|
|
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
2015-03-17 14:06:21 +00:00
|
|
|
<title>The Book of Shaders</title>
|
2015-03-15 15:21:47 +00:00
|
|
|
<meta name="keywords" content="shader,shaders,GLSL,book,pixel,fragment,uniform,texture,procedural,generative,matrix,random,noise" />
|
|
|
|
<meta name="description" content="This is a gentle step-by-step guide through the abstract and complex universe of Fragment Shaders." />
|
|
|
|
|
|
|
|
<!-- CodeMirror -->
|
|
|
|
<link type='text/css' rel='stylesheet' href="src/codemirror/css/codemirror.css">
|
|
|
|
<link type='text/css' rel="stylesheet" href="src/codemirror/addon/fold/foldgutter.css">
|
|
|
|
<link type='text/css' rel="stylesheet" href="src/codemirror/addon/dialog/dialog.css">
|
|
|
|
<link type='text/css' rel="stylesheet" href="src/codemirror/addon/hint/show-hint.css">
|
|
|
|
<link type='text/css' rel="stylesheet" href="src/codemirror/theme/neo.css">
|
|
|
|
<script type="text/javascript" src="src/codemirror.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/search/searchcursor.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/search/search.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/dialog/dialog.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/edit/matchbrackets.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/edit/closebrackets.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/comment/comment.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/wrap/hardwrap.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/fold/foldcode.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/fold/brace-fold.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/keymap/sublime.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/addon/hint/show-hint.js"></script>
|
|
|
|
<script type="text/javascript" src="src/codemirror/mode/clike.js"></script>
|
|
|
|
|
|
|
|
<!-- Highlight -->
|
|
|
|
<link type='text/css' rel='stylesheet' href="css/github.css">
|
|
|
|
<script type="text/javascript" src="src/highlight.min.js"></script>
|
|
|
|
|
|
|
|
<!-- Marked -->
|
|
|
|
<script type="text/javascript" src="src/marked.js"></script>
|
|
|
|
|
|
|
|
<!-- My stuff -->
|
|
|
|
<link type='text/css' rel='stylesheet' href="css/style.css">
|
|
|
|
<script type="text/javascript" src="src/glslCanvas.js"></script>
|
|
|
|
|
|
|
|
</style>
|
|
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<div id="content"> </div>
|
|
|
|
|
|
|
|
<footer>
|
|
|
|
<p> Copyright 2015 <a href="http://www.patriciogonzalezvivo.com" target="_blank">Patricio Gonzalez Vivo</a> </p>
|
|
|
|
</footer>
|
|
|
|
|
|
|
|
<script type="text/javascript" src="src/main.js" defer></script>
|
|
|
|
<script>
|
|
|
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
|
|
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
|
|
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
|
|
|
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
|
|
|
|
|
|
|
ga('create', 'UA-18824436-2', 'auto');
|
|
|
|
ga('send', 'pageview');
|
|
|
|
</script>
|
|
|
|
</body>
|
|
|
|
</html>
|