Catherine Morgan
  • Home
  • Portfolio
    • Coding
    • Game Programming>
      • Escape>
        • Escape Document
      • Flappy Mitch
      • League of Legends: Champion Info>
        • LoL Document
      • Sentiment>
        • Sentiment Document
      • Current Projects
    • Game Design>
      • Game Design Document Example
      • Insomniac Game Design Test
      • Rockstar Game Design Test
      • Colonization
      • HACK
      • Game Ideas
      • Writing
  • Hobbies
    • Voice Acting
    • Photography
  • Contact

Programming Languages

Java,  C#, Javascript, C++, Lisp, Python, Racket/Scheme, HTML/CSS, OpenGL/Glut, Haskell, Prolog, Assembly
 
Programs/Tools

Unity3D, Microsoft Visual Studios, Netbeans, GitHub, Git Exstentions, Jira, SVN, Adobe Flash Professional CC, Adobe Illustrator, Adobe Photoshop, Microsoft Office, GoogleSketchUp, MonoDevelop, PuTTy, Windows/Mac/Linux environments, Terminal, Agile/Scrum, DrRacket, DrScheme, LispWorks

GIThub
This page is to showcase coding that is not related to game design and programming. Game programming, both independent work and school-related, are under the "Game Programming" page. Below are just tidbits of code, but you can find full programs on my Github.

Java
My largest Java project has been from Compilers, a 300-level course. It is for a Vassar-made subset of Pascal. 
Compilers Project
Below are some examples of code from various projects.

PacMan

This is part of the game "PacMan" programmed in Java. The function directionalPacman takes the input key direction(up, down, left or right), and will move the PacMan in that direction if it doesn't hit a wall, or hits an obstacle on the map. Also, if it gets to a "gate" on the edge of the map, the PacMan is moved to the opposite end of the map.



Another part of PacMan is adding the dots that the PacMan eats to gain points and clear the level. The function addDots adds a dot structure to every row in every column, and then adds the dot to an ArrayList called "dots". Then, the function isEaten checks if the PacMan has eaten the dot, so it will remove the dot from dots and add it another ArrayList called eatenDots. Finally, it increments the score.



Tetris

This is the "Rows" class from part of my own program of Tetris. It adds new blocks to the game, keeps track of the blocks that have fallen, checks to see if a row has been complete and if it has, delete the row and then it will move the row down, checks to see if a block has hit another block and then it will build up rows, and finally draws all the blocks on the current world.






Dictionary

This is the main class from a Dictionary program that checks if a word is in the dictionary.




Other projects I have programmed include:  John Conway's Game of Life, node transverse of George Washington's genealogy, and a text editor.

C++
I learned C++ for a Graphics class. 

Mandelbrot Set

Below is part of a program I wrote in Microsoft Visual Studios using C++ and OpenGL/Glut, which displays the Mandelbrot Set and has the ability to pop/push a stack as to zoom out/in.











I also worked on an animation project, a drawing application, and a ray tracing program.

Racket
Below demonstrates my knowledge of functional programming and recursion.


Some interesting projects I've created are: Snake and a program that produces a graphical representation of an input DNA strand and its compliment.
Proudly powered by Weebly