Code Monkey home page Code Monkey logo

axiom's People

Contributors

duingoes avatar innoviox avatar paragonal avatar rassarthescrabbler avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

axiom's Issues

Light is weird

If you increase the gamma constant in phong.fs you get a better sense of where the light is coming from. When this was done the following block was displayed:

screenshot 2017-10-31 12 26 32

In this you can tell that the light is shading all of the faces in disparate corners. It is possible that the corners are reversed or backwards somehow. Or that it is rendering all of the faces the same, or any number of other things. :(

Pixelated reflections

screen shot 2017-10-26 at 7 39 51 pm
Reflective surfaces have an odd pixelated look. This maybe be a product of the low-resolution texture.

Update Mouse functionality

The current KeyboardListener class has the functionality to test double-clicked and different mouse buttons which is not implemented in the current MouseListener. I suggest:

  • Rename KeyboardListener to InputHandler
  • Add MouseListener's display vector functionality to the new InputHandler class.

When window closes, spawns infinite new windows

Window works fine. When I click the close button, it spawns infinite new windows, like this:

screenshot 2017-10-10 20 03 33

It is definitely calling the constructor repeatedly, as it prints out the opengl info to the screen.

Push code from computer

Simon forgot to push the rotation code and he has to push it. It is possible that he deleted it from his computer. Yay!

Specific polygon creates odd dithering

screen shot 2017-10-26 at 7 39 11 pm
When this edge is viewed from an angle close to perpendicular to the top of the cube from either inside or outside the cube, an odd dithering appears on the top.

Collisions wonky

Collides between two items always returns true, however in debugging it appears collides is never being called.

InputHandler overrides MouseInput

  • Rename InputHandler โ†’ KeyboardInput
  • Remove the mouse variable from InputHandler and move mouse functionality from InputHandler to MouseInput
  • Remove line 73 of Game

Path forward

for improvement that I wrote down after the ESS test:

Things to do:

  1. Fix HUD
  2. Make sky prettier with ambient lighting
  3. Implement optimizations & render a landscape
  4. Collide with the landscape. Basic motion "game"
  5. Generate a large world
  6. Fully implement different lights.
  7. Scene: Skybox, a house next to a road, a streetlight that throws light on the road and the house, a moving sun in the sky. Day and night.
  8. Animation: A person walks down the street while the sun moves overhead. Can go into the house; door opens and closes.

Ideas for restructuring and improvement

  • Facilitate Item creation
    Item I = new Item(modelFile, textureFile)
    .setScale(...)
    .setPosition(...)
    .setRotation(...);

  • Add object that moves with Camera ==> TiedItem extends Item implements Tieable

  • CollidableItem implements Tieable

  • Camera implements Tieable

  • PseudoMesh: a mesh that doesn't render

UML for TiedItem

  • Tieable t
  • TiedItem(Tieable t, String modelFile, String textureFile)
  • update

Restructure item package
item
interfaces => Tieable, Collidable
model => Material, Texture, Mesh
lighting => Light, ...
Item, CollidableItem, TiedItem, ...

Issues Resizing Window

If the window is resized to be bigger than when it was first instantiated (line 86 of main), the box will not render in the new screen area even though the background is the correct color. The 800x600 area is centered in the lower-left. If the window is resized to be smaller than 800x600 then resized back to 800x600 or bigger, the same 800x600 border is present.
ezgif com-video-to-gif

.gitignore

Although this isn't the most pressing of issues, adding a .gitignore file that ignored eclipse files like .project and .classpath, intellij files like .ide and gradle files like .gradle might make it easier to develop on different IDEs.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.