Deploy CJSatnarine/CJSatnarine.github.io to CJSatnarine/CJSatnarine.github.io:gh-pages
63
projects/adventuring_animator/index.html
Normal file
@@ -0,0 +1,63 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CJ Satnarine</title>
|
||||
|
||||
<link rel="stylesheet" href="/style.css" />
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto Mono' rel='stylesheet'>
|
||||
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"three": "https://cdn.jsdelivr.net/npm/three@0.174.0/build/three.module.js",
|
||||
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.174.0/examples/jsm/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="module" src="/main.js"></script>
|
||||
<script type="module" src="/window.js"></script>
|
||||
</head>
|
||||
|
||||
<nav>
|
||||
<a href="https://cjsatnarine.github.io/">Home</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/blog/"><strike>Rants</strike> Posts</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/projects/">My Stuff</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/stuff_I_like/">Stuff I Like</a>
|
||||
<hr>
|
||||
</nav>
|
||||
|
||||
<body>
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
|
||||
<h1 id="adventuring_animator" class="title">
|
||||
Adventuring Animator
|
||||
</h1>
|
||||
|
||||
<p>I want to start making more animations and art. This is where I show my animations and artwork. I fell in love with <em>Blender</em> while learning to programme at age 16. My introduction came from Media Arts class, where I initially learnt Blender for making assets for Unity. I fell in love with creating models and experimenting with shaders. The following two years of high school were spent developing my skills in the software. After graduating highschool, I stopped using the software to focus on software engineering for college for about two years. Now I hope to revisit this old passion of mine, and also venture into the unknown territory of digital art with <em>Krita</em>.</p>
|
||||
<h2 id="projects">Projects</h2>
|
||||
<h6 id="projects-coming-soon">Projects coming soon!</h6>
|
||||
|
||||
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
|
||||
<footer id="footer">
|
||||
<center>
|
||||
<a href="https://evilr.ing/cjsatnarine/previous"><</a>
|
||||
<a href="https://evilr.ing">EVILRING</a>
|
||||
<a href="https://evilr.ing/cjsatnarine/next">></a>
|
||||
<p> Made with <a href="https://www.getzola.org/">Zola</a></p>
|
||||
</center>
|
||||
</footer>
|
||||
|
||||
</html>
|
80
projects/amateur_linguist/index.html
Normal file
@@ -0,0 +1,80 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CJ Satnarine</title>
|
||||
|
||||
<link rel="stylesheet" href="/style.css" />
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto Mono' rel='stylesheet'>
|
||||
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"three": "https://cdn.jsdelivr.net/npm/three@0.174.0/build/three.module.js",
|
||||
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.174.0/examples/jsm/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="module" src="/main.js"></script>
|
||||
<script type="module" src="/window.js"></script>
|
||||
</head>
|
||||
|
||||
<nav>
|
||||
<a href="https://cjsatnarine.github.io/">Home</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/blog/"><strike>Rants</strike> Posts</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/projects/">My Stuff</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/stuff_I_like/">Stuff I Like</a>
|
||||
<hr>
|
||||
</nav>
|
||||
|
||||
<body>
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
|
||||
<h1 id="amateur_linguist" class="title">
|
||||
Amateur Linguist
|
||||
</h1>
|
||||
|
||||
<p>Languages are cool. I like languages. I want to languages. Here you will find my linguistics projects.</p>
|
||||
<p>As a young child, I have had an interest in linguistics. For a while, I was grinding Duolingo, but that felt more of a game than actually learning, so I stopped that and tried learning languages through other means. My native tongue is <em>English</em>, but I find interest in these other languages:</p>
|
||||
<ul>
|
||||
<li><em>Deutsch</em>: currently learning both Hochdeutsch and Schwiizerdütsch from my Swiss friends</li>
|
||||
<li><em>Español</em>: learnt some Spanish when I was younger, not really good at it but I can barely hold a conversation</li>
|
||||
<li><em>Français</em>: learnt a bit in school, but my French is really bad as I often confuse Parisian French with Swiss French</li>
|
||||
<li><em>Nederlands</em>: learnt some when I was younger, I'm not as good as I used to be</li>
|
||||
<li><em>Dansk</em>: an unfortunate event occured</li>
|
||||
<li><em>Íslenska</em>: I know this cool Icelandic guy and the language is so cool because they still use þorn</li>
|
||||
<li><em>Norsk</em>: Norwegian is interesting but I already know some Danish and I'm not sure if I want to learn Danish but less funny-sounding</li>
|
||||
<li><em>Lingua Latina</em>: learnt a bit in school, pretty cool language</li>
|
||||
<li><em>ελληνικά</em>: Greek is kinda cool, I wanna learn it in the future</li>
|
||||
<li><em>Русский</em>: I have no interest in learning Russian but I am going to torture myself by learning Russian just to read Tolstoy's War and Peace its original language</li>
|
||||
<li><em>Suomi</em>: my brother is learning Finnish so I might learn it as well for the funnies</li>
|
||||
<li><em>Davvisámegiella</em>: I discovered Northern Sámi through music, and I think it's a cool language</li>
|
||||
<li><em>Kalaallisut</em>: Greenlandic was also discovered through music, I think it's also cool</li>
|
||||
</ul>
|
||||
<p>Unfortunately, I do not think I'll be able to learn all of these languages. That's fine, I'm happy about learning as much as I can.</p>
|
||||
<h2 id="projects">Projects</h2>
|
||||
<h6 id="projects-coming-soon">Projects coming soon!</h6>
|
||||
|
||||
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
|
||||
<footer id="footer">
|
||||
<center>
|
||||
<a href="https://evilr.ing/cjsatnarine/previous"><</a>
|
||||
<a href="https://evilr.ing">EVILRING</a>
|
||||
<a href="https://evilr.ing/cjsatnarine/next">></a>
|
||||
<p> Made with <a href="https://www.getzola.org/">Zola</a></p>
|
||||
</center>
|
||||
</footer>
|
||||
|
||||
</html>
|
75
projects/aspiring_game_developer/index.html
Normal file
@@ -0,0 +1,75 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CJ Satnarine</title>
|
||||
|
||||
<link rel="stylesheet" href="/style.css" />
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto Mono' rel='stylesheet'>
|
||||
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"three": "https://cdn.jsdelivr.net/npm/three@0.174.0/build/three.module.js",
|
||||
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.174.0/examples/jsm/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="module" src="/main.js"></script>
|
||||
<script type="module" src="/window.js"></script>
|
||||
</head>
|
||||
|
||||
<nav>
|
||||
<a href="https://cjsatnarine.github.io/">Home</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/blog/"><strike>Rants</strike> Posts</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/projects/">My Stuff</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/stuff_I_like/">Stuff I Like</a>
|
||||
<hr>
|
||||
</nav>
|
||||
|
||||
<body>
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
|
||||
<h1 id="aspiring_game_developer" class="title">
|
||||
Aspiring Game Developer
|
||||
</h1>
|
||||
|
||||
<p>I think graphics are cool. I really like graphics. When I grow up I want to be a graphics programmer. For now I can learn how to be a game developer while playing around with graphics stuff. Here you'll find those learning projects.</p>
|
||||
<p>My admiration for computer graphics and game development grew with my interests in programming and 3D animation. Throughout the years, I have used (and plan to use) a couple of game engines:</p>
|
||||
<ul>
|
||||
<li><em>Unity</em>: this was where I learnt how to program in C#, and where most of my experience lies in terms of game engines (picked it up in 2021)</li>
|
||||
<li><em>Godot</em>: learning Godot because I love FOSS, I use C# instead of GDScript for scripting (picked it up in 2025)</li>
|
||||
<li><em>UPBGE</em>: tried out <a href="https://upbge.org/#/">Blender's game engine</a> for a few months but I wasn't a fan of scripting in Python so I ditched it</li>
|
||||
<li><em>GDevelop</em>: yeah no</li>
|
||||
<li><em>LÖVE</em>: tried it out but it was more of a playground than using it as an actual game engine</li>
|
||||
<li><em>Pygame</em>: did a bit in highschool, but that's about it</li>
|
||||
<li><em>Kyzen</em>: soon to be first beta tester of <a href="https://github.com/luut189/kyzen">Kyzen 2D game engine</a></li>
|
||||
</ul>
|
||||
<p>Since July of 2024, I have been trying teaching myself graphics programming (it's difficult but I love it). Currently, I am teaching myself <em>OpenGL</em> and <em>GLSL</em>. Eventually, I hope to move onto something modern like <em>Vulkan</em> once I'm more experienced. I also hope to experiment more with <em>Godot Shader Language</em> in Godot. I am currently using <em>Godot</em> for my game development projects.</p>
|
||||
<h2 id="projects">Projects</h2>
|
||||
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a id="blog_colour" href="https://cjsatnarine.github.io/projects/aspiring_game_developer/raytracer-in-a-weekend/">Raytracer</a></li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
|
||||
<footer id="footer">
|
||||
<center>
|
||||
<a href="https://evilr.ing/cjsatnarine/previous"><</a>
|
||||
<a href="https://evilr.ing">EVILRING</a>
|
||||
<a href="https://evilr.ing/cjsatnarine/next">></a>
|
||||
<p> Made with <a href="https://www.getzola.org/">Zola</a></p>
|
||||
</center>
|
||||
</footer>
|
||||
|
||||
</html>
|
After Width: | Height: | Size: 279 KiB |
After Width: | Height: | Size: 202 KiB |
@@ -0,0 +1,98 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CJ Satnarine</title>
|
||||
|
||||
<link rel="stylesheet" href="/style.css" />
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto Mono' rel='stylesheet'>
|
||||
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"three": "https://cdn.jsdelivr.net/npm/three@0.174.0/build/three.module.js",
|
||||
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.174.0/examples/jsm/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="module" src="/main.js"></script>
|
||||
<script type="module" src="/window.js"></script>
|
||||
</head>
|
||||
|
||||
<nav>
|
||||
<a href="https://cjsatnarine.github.io/">Home</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/blog/"><strike>Rants</strike> Posts</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/projects/">My Stuff</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/stuff_I_like/">Stuff I Like</a>
|
||||
<hr>
|
||||
</nav>
|
||||
|
||||
<body>
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
|
||||
<h1 id="title" class="title">
|
||||
Raytracer
|
||||
</h1>
|
||||
|
||||
<p><a href="https://github.com/CJSatnarine/Raytracer">GitHub Link</a></p>
|
||||
<p>I started working on this raytracer on the 3rd of July, 2024. It was my first graphics programming project, and I learnt quite a bit doing it. To make this raytracer, I followed the books <a href="https://raytracing.github.io/books/RayTracingInOneWeekend.html"><em>Ray Tracing in One Weekend</em></a> and <a href="https://raytracing.github.io/books/RayTracingTheNextWeek.html"><em>Ray Tracing: The Next Week</em></a>. This was programmed in C++, and for majority of this I was just following through with the code of the books while taking in the important concepts.</p>
|
||||
<blockquote>
|
||||
<p>TLDR: I learnt to use CMake to build the project. I rendered the images to PPM files. I basically followed the code in the books to make the raytracer.</p>
|
||||
</blockquote>
|
||||
<h3 id="some-images-i-made-d">Some images I made :D</h3>
|
||||
<p>Here's an happy accident I ran into when I had a typo in my code, I think it looks cool:</p>
|
||||
<p><img src="https://cjsatnarine.github.io/projects/aspiring_game_developer/raytracer-in-a-weekend/failedRender.png" alt="happy accident" /></p>
|
||||
<p>Here's my face on a sphere because I thought it was funny at the time:</p>
|
||||
<p><img src="https://cjsatnarine.github.io/projects/aspiring_game_developer/raytracer-in-a-weekend/funny.png" alt="face on a sphere" /></p>
|
||||
<h6 id="more-images-is-coming-soon-lol">more images is coming soon LOL</h6>
|
||||
<h3 id="how-the-programme-works">How the programme works:</h3>
|
||||
<p>In the <code>main.cpp</code> file, there are a bunch of functions that are supposed to render something. I have a switch statement that just assign the different scenes to render. A sort of lazy menu.</p>
|
||||
<p><img src="https://cjsatnarine.github.io/projects/aspiring_game_developer/raytracer-in-a-weekend/sceneChooser.png" alt="Scene Chooser" /></p>
|
||||
<h2 id="cmake">CMake</h2>
|
||||
<p>It was the first time I used CMake to build a project to run on different platforms. I'm not sure what else to say, it's CMake. It did take me a while to get this stuff working so there's that.</p>
|
||||
<h2 id="ppm-images">PPM Images</h2>
|
||||
<p>This was the first time I had ever came across the <a href="https://en.wikipedia.org/wiki/Netpbm">PPM image format (it's somewhere on this Wikipedia article I swear, just go look for it)</a>. Prior to this I genuinely had no idea how you could send data to files and stuff like that. The PPM is really simple to work with. I'll summarise it by a screenshot of the little rant I sent to my best friend's dms:</p>
|
||||
<p><img src="https://cjsatnarine.github.io/projects/aspiring_game_developer/raytracer-in-a-weekend/screenshot.png" alt="screenshot image" /></p>
|
||||
<p>As you can see, very epic balls.
|
||||
However, I didn't explain what the first 3 lines of the PPM file represented.</p>
|
||||
<p>The first line, the <code>P3</code>, represents a two-byte magic number. For these files, the magic number works as some sort of identifier to show what type of file we're dealing with. To avoid going on a rant aboutb PPM files, I'm just going to say that the <code>P3</code> means that we're dealing with an RGB colour image in ASCII.</p>
|
||||
<p>The second line, where it shows two numbers (<code>400 255</code>), is the number of columns and rows (respectively) in the image.</p>
|
||||
<p>The third line, <code>255</code>, tells us the maximum colour.</p>
|
||||
<p>Everything after the third line (the group of 3 RGB values) are the RGB values of each individual pixel per line.</p>
|
||||
<h3 id="writing-to-ppm-files">Writing to PPM Files</h3>
|
||||
<p>I'll also summarise the writing to PPM files bit by another part of the rant directed to my best friend's dms:</p>
|
||||
<p><img src="https://cjsatnarine.github.io/projects/aspiring_game_developer/raytracer-in-a-weekend/screenshot_code.png" alt="screenshot code image" /></p>
|
||||
<p>The top 3 lines discussed earlier were printed to the console earlier in the code. This was where I learnt how to use the redirectional operators, even though it was already taught in my college classes but I guess I wasn't a good student lol. Any way, that code produced the following image:</p>
|
||||
<p><img src="https://cjsatnarine.github.io/projects/aspiring_game_developer/raytracer-in-a-weekend/pixels.png" alt="pixels image" /></p>
|
||||
<h2 id="the-raytracer">The Raytracer</h2>
|
||||
<p>Okay so the way this works is that a raytracer sends rays through pixels and calculates the colour for each ray sent. The steps are basically:</p>
|
||||
<ol>
|
||||
<li>Calculate the ray from the camera through the pixel.</li>
|
||||
<li>Determine which objects in the scene the ray intersects. Those objects will be rendered.</li>
|
||||
<li>Computer a colour for the closest intersection point.</li>
|
||||
</ol>
|
||||
<p>Building this took a lot of maths, which the book would explain in a much better way than I ever could.What I would be explaining some of the cool topics I learnt while following this book.</p>
|
||||
<h3 id="camera-stuff">Camera Stuff</h3>
|
||||
<p>Cameras are, like, important. It's how we see into the scene. 🤯 But ya, cameras have aspect ratios. It's basically the ratio of the image width and the image height. For this raytracer, the height of the image is calculated with the image's aspect ratio and the width (<code>image_height = image_width / (aspect_ratio)</code>), so you only have to tweak the width when working on resizing the image and also keep the desired aspect ratio.</p>
|
||||
<p>Viewports are also pretty important. It's a virtual rectangle in the 3D world that holds the grid of image pixel locations. We need this to pass through all the scene rays.</p>
|
||||
<p>A problem here is that the camera centre is at some point in 3D space, and the pixel grid starts from the top left cornr and ends at the bottom right with the last pixel. To get them to work together, the rendering starts from the top left to the top right, and then to the next row im a similar fashion, through the rest of rows until the last pixel. Vectors from the left edge to the right edge, and the upper edge to the lower edge are used to navigate the grid. The pixel grid is also inset from the viewport by half a pixel distance so that the viewport is evenly divided into width and height identical regions.</p>
|
||||
<h6 id="i-ll-update-the-rest-of-the-page-when-i-understand-the-concepts-well-enough-to-explain-them-yeah-there-s-a-lot-of-maths-here-that-i-don-t-have-a-full-grasp-of-yet">I'll update the rest of the page when I understand the concepts well enough to explain them. Yeah there's a lot of maths here that I don't have a full grasp of, yet.</h6>
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
|
||||
<footer id="footer">
|
||||
<center>
|
||||
<a href="https://evilr.ing/cjsatnarine/previous"><</a>
|
||||
<a href="https://evilr.ing">EVILRING</a>
|
||||
<a href="https://evilr.ing/cjsatnarine/next">></a>
|
||||
<p> Made with <a href="https://www.getzola.org/">Zola</a></p>
|
||||
</center>
|
||||
</footer>
|
||||
|
||||
</html>
|
After Width: | Height: | Size: 9.3 KiB |
After Width: | Height: | Size: 57 KiB |
After Width: | Height: | Size: 68 KiB |
After Width: | Height: | Size: 87 KiB |
64
projects/frolicking_photographer/index.html
Normal file
@@ -0,0 +1,64 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CJ Satnarine</title>
|
||||
|
||||
<link rel="stylesheet" href="/style.css" />
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto Mono' rel='stylesheet'>
|
||||
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"three": "https://cdn.jsdelivr.net/npm/three@0.174.0/build/three.module.js",
|
||||
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.174.0/examples/jsm/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="module" src="/main.js"></script>
|
||||
<script type="module" src="/window.js"></script>
|
||||
</head>
|
||||
|
||||
<nav>
|
||||
<a href="https://cjsatnarine.github.io/">Home</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/blog/"><strike>Rants</strike> Posts</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/projects/">My Stuff</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/stuff_I_like/">Stuff I Like</a>
|
||||
<hr>
|
||||
</nav>
|
||||
|
||||
<body>
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
|
||||
<h1 id="frolicking_photographer" class="title">
|
||||
Frolicking Photographer
|
||||
</h1>
|
||||
|
||||
<p>I managed to get my hands on an old Nikon D70s camera, so I'll try to learn photography from that.</p>
|
||||
<h2 id="projects">Projects</h2>
|
||||
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a id="blog_colour" href="https://cjsatnarine.github.io/projects/frolicking_photographer/nikon-camera/">Nikon D70s</a></li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
|
||||
<footer id="footer">
|
||||
<center>
|
||||
<a href="https://evilr.ing/cjsatnarine/previous"><</a>
|
||||
<a href="https://evilr.ing">EVILRING</a>
|
||||
<a href="https://evilr.ing/cjsatnarine/next">></a>
|
||||
<p> Made with <a href="https://www.getzola.org/">Zola</a></p>
|
||||
</center>
|
||||
</footer>
|
||||
|
||||
</html>
|
BIN
projects/frolicking_photographer/nikon-camera/dark.png
Normal file
After Width: | Height: | Size: 2.8 MiB |
BIN
projects/frolicking_photographer/nikon-camera/fungi_friends.png
Normal file
After Width: | Height: | Size: 261 KiB |
BIN
projects/frolicking_photographer/nikon-camera/fungi_on_moon.png
Normal file
After Width: | Height: | Size: 2.3 MiB |
61
projects/frolicking_photographer/nikon-camera/index.html
Normal file
@@ -0,0 +1,61 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CJ Satnarine</title>
|
||||
|
||||
<link rel="stylesheet" href="/style.css" />
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto Mono' rel='stylesheet'>
|
||||
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"three": "https://cdn.jsdelivr.net/npm/three@0.174.0/build/three.module.js",
|
||||
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.174.0/examples/jsm/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="module" src="/main.js"></script>
|
||||
<script type="module" src="/window.js"></script>
|
||||
</head>
|
||||
|
||||
<nav>
|
||||
<a href="https://cjsatnarine.github.io/">Home</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/blog/"><strike>Rants</strike> Posts</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/projects/">My Stuff</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/stuff_I_like/">Stuff I Like</a>
|
||||
<hr>
|
||||
</nav>
|
||||
|
||||
<body>
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
|
||||
<h1 id="title" class="title">
|
||||
Nikon D70s
|
||||
</h1>
|
||||
|
||||
<p>Some time in the July of 2025, I managed to get my hands on a Nikon D70s DSLR that was sitting around for years. I got it with a <code>Nikon NIKKOR 70-300mm f/4.0-5.6 D AF ED Lens</code> and a <code>Nikon DX SWM ED IF Aspherical 67 AF-S Nikkor 18-70mm 1:3.5-4.5G ED</code>. Honestly, I don't know what any of this means, but with time I'll learn. I was hoping to learn photography with this camera, however, we have a problem:</p>
|
||||
<p><img src="https://cjsatnarine.github.io/projects/frolicking_photographer/nikon-camera/fungi_friends.png" alt="Fungi in lens" /></p>
|
||||
<p>It seems that though the nearly one decade of the camera sitting around has allowed a colony of fungi to reside in both lenses. Even though I have computer refurbishing experience, I am genuinely too afraid to open up the lenses because I'm not confident I would be able to put them together.The above image is from the <code>70-300mm</code> lens, which looks pretty bad. The other lens, the <code>18-70mm</code>, isn't as <em>bad</em>, but the fungi is still pretty visible:</p>
|
||||
<p><img src="https://cjsatnarine.github.io/projects/frolicking_photographer/nikon-camera/fungi_on_moon.png" alt="Fungi with moon" /></p>
|
||||
<p>I'm going to have to fix this eventually. Somehow. Anyway, here's one of the first pictures I took with the camera:</p>
|
||||
<p><img src="https://cjsatnarine.github.io/projects/frolicking_photographer/nikon-camera/dark.png" alt="dark" /></p>
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
|
||||
<footer id="footer">
|
||||
<center>
|
||||
<a href="https://evilr.ing/cjsatnarine/previous"><</a>
|
||||
<a href="https://evilr.ing">EVILRING</a>
|
||||
<a href="https://evilr.ing/cjsatnarine/next">></a>
|
||||
<p> Made with <a href="https://www.getzola.org/">Zola</a></p>
|
||||
</center>
|
||||
</footer>
|
||||
|
||||
</html>
|
71
projects/index.html
Normal file
@@ -0,0 +1,71 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CJ Satnarine</title>
|
||||
|
||||
<link rel="stylesheet" href="/style.css" />
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto Mono' rel='stylesheet'>
|
||||
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"three": "https://cdn.jsdelivr.net/npm/three@0.174.0/build/three.module.js",
|
||||
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.174.0/examples/jsm/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="module" src="/main.js"></script>
|
||||
<script type="module" src="/window.js"></script>
|
||||
</head>
|
||||
|
||||
<nav>
|
||||
<a href="https://cjsatnarine.github.io/">Home</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/blog/"><strike>Rants</strike> Posts</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/projects/">My Stuff</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/stuff_I_like/">Stuff I Like</a>
|
||||
<hr>
|
||||
</nav>
|
||||
|
||||
<body>
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
|
||||
<h1 class="title">
|
||||
My Stuff
|
||||
</h1>
|
||||
|
||||
<p>This is where you'll find my projects. They're split into different categories, for my different interests. Each project would have a <em>somewhat</em> detailed description of what I did, what I learnt, and that sort of stuff.</p>
|
||||
|
||||
|
||||
<ul>
|
||||
<li><a id="vaxandi_forritari" href="https://cjsatnarine.github.io/projects/vaxandi_forritari/">vaxandi forritari</a></li>
|
||||
<li><a id="aspiring_game_developer" href="https://cjsatnarine.github.io/projects/aspiring_game_developer/">aspiring game developer</a></li>
|
||||
<li><a id="amateur_linguist" href="https://cjsatnarine.github.io/projects/amateur_linguist/">amateur linguist</a></li>
|
||||
<li><a id="frolicking_photographer" href="https://cjsatnarine.github.io/projects/frolicking_photographer/">frolicking photographer</a></li>
|
||||
<li><a id="adventuring_animator" href="https://cjsatnarine.github.io/projects/adventuring_animator/">adventuring animator</a></li>
|
||||
<li><a id="music_enjoyer" href="https://cjsatnarine.github.io/projects/music_enjoyer/">music enjoyer</a></li>
|
||||
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
|
||||
<footer id="footer">
|
||||
<center>
|
||||
<a href="https://evilr.ing/cjsatnarine/previous"><</a>
|
||||
<a href="https://evilr.ing">EVILRING</a>
|
||||
<a href="https://evilr.ing/cjsatnarine/next">></a>
|
||||
<p> Made with <a href="https://www.getzola.org/">Zola</a></p>
|
||||
</center>
|
||||
</footer>
|
||||
|
||||
</html>
|
63
projects/music_enjoyer/index.html
Normal file
@@ -0,0 +1,63 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CJ Satnarine</title>
|
||||
|
||||
<link rel="stylesheet" href="/style.css" />
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto Mono' rel='stylesheet'>
|
||||
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"three": "https://cdn.jsdelivr.net/npm/three@0.174.0/build/three.module.js",
|
||||
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.174.0/examples/jsm/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="module" src="/main.js"></script>
|
||||
<script type="module" src="/window.js"></script>
|
||||
</head>
|
||||
|
||||
<nav>
|
||||
<a href="https://cjsatnarine.github.io/">Home</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/blog/"><strike>Rants</strike> Posts</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/projects/">My Stuff</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/stuff_I_like/">Stuff I Like</a>
|
||||
<hr>
|
||||
</nav>
|
||||
|
||||
<body>
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
|
||||
<h1 id="music_enjoyer" class="title">
|
||||
Music Enjoyer
|
||||
</h1>
|
||||
|
||||
<p>I like music. I listen to a lot of music. I want to learn how to make music. Here you'll find my music projects. I plan to use <a href="https://lmms.io/">LMMS</a> to make this music.</p>
|
||||
<h2 id="projects">Projects</h2>
|
||||
<h6 id="projects-coming-soon">Projects coming soon!</h6>
|
||||
|
||||
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
|
||||
<footer id="footer">
|
||||
<center>
|
||||
<a href="https://evilr.ing/cjsatnarine/previous"><</a>
|
||||
<a href="https://evilr.ing">EVILRING</a>
|
||||
<a href="https://evilr.ing/cjsatnarine/next">></a>
|
||||
<p> Made with <a href="https://www.getzola.org/">Zola</a></p>
|
||||
</center>
|
||||
</footer>
|
||||
|
||||
</html>
|
76
projects/vaxandi_forritari/index.html
Normal file
@@ -0,0 +1,76 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CJ Satnarine</title>
|
||||
|
||||
<link rel="stylesheet" href="/style.css" />
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto Mono' rel='stylesheet'>
|
||||
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"three": "https://cdn.jsdelivr.net/npm/three@0.174.0/build/three.module.js",
|
||||
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.174.0/examples/jsm/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="module" src="/main.js"></script>
|
||||
<script type="module" src="/window.js"></script>
|
||||
</head>
|
||||
|
||||
<nav>
|
||||
<a href="https://cjsatnarine.github.io/">Home</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/blog/"><strike>Rants</strike> Posts</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/projects/">My Stuff</a>
|
||||
<span id="text"> | </span><a href="https://cjsatnarine.github.io/stuff_I_like/">Stuff I Like</a>
|
||||
<hr>
|
||||
</nav>
|
||||
|
||||
<body>
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
|
||||
<h1 class="title">
|
||||
Vaxandi Forritari
|
||||
</h1>
|
||||
|
||||
<p>This is where you'll find my coding projects, tech projects, anything that's coding but isn't <a id="aspiring_graphics_programmer" href="/projects/aspiring_game_developer/">game development</a>.</p>
|
||||
<p>The phrase <em><strong>Vaxandi Forritari</strong></em> is Icelandic for <em><strong>learning programmer</strong></em>. I'm still learning a lot, so I'm a <em>vaxandi forritari</em> in a way. I discovered my love for programming in highschool at the age of 16, when I was learning to use the Unity game engine. I'm familiar with the following programming languages:</p>
|
||||
<ul>
|
||||
<li><em>C#</em>: learnt it in 2021 for scripting in Unity</li>
|
||||
<li><em>Java</em>: learnt it in Computer Science class in highschool, spent most of my time in Grades 11 and 12 using Java</li>
|
||||
<li><em>Processing</em>: used it for making graphics in Media Arts class in highschool</li>
|
||||
<li><em>Python</em>: learnt it for scripting with the <a href="https://docs.blender.org/api/current/index.html">Blender Python API</a>, later used it to try out Pygame and <a href="https://upbge.org/#/">Blender's game engine</a></li>
|
||||
<li><em>Arduino</em>: this is C but I learnt this before learning C/C++, used it in Computer Engineering classes in highschool</li>
|
||||
<li><em>C/C++</em>: used a bit of it for programming <a href="https://mirobo.tech/ubmp4">Mirobo UBMP4s</a> in high school Computer Engineering classes, learnt way more in college when persuing software engineering</li>
|
||||
<li><em>6808 Assembly</em>: learnt it in college and I never want to touch it again (I actually have an interest in it but I'll touch it again when I'm older and (probably) wiser)</li>
|
||||
<li><em>HTML, CSS</em>: learnt it to make this website</li>
|
||||
<li><em>JavaScript</em>: learnt it to script in Three.js</li>
|
||||
<li><em>Lua</em>: used to configure Neovim, used a bit with LÖVE</li>
|
||||
</ul>
|
||||
<h2 id="projects">Projects</h2>
|
||||
<h6 id="projects-coming-soon">Projects coming soon!</h6>
|
||||
|
||||
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
|
||||
<footer id="footer">
|
||||
<center>
|
||||
<a href="https://evilr.ing/cjsatnarine/previous"><</a>
|
||||
<a href="https://evilr.ing">EVILRING</a>
|
||||
<a href="https://evilr.ing/cjsatnarine/next">></a>
|
||||
<p> Made with <a href="https://www.getzola.org/">Zola</a></p>
|
||||
</center>
|
||||
</footer>
|
||||
|
||||
</html>
|