Coder Social home page Coder Social logo

basic4glj's People

Contributors

nateisstalling avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

basic4glj's Issues

Fix Java method naming conventions

Fix code style issues from porting C++ code

  • Java methods should be camelCase
  • Java methods should avoid unnecessary abbreviations (eg: "col" should be "column" - "VM" is okay)

Mac Shortcut Keys

Support standard shortcut keys for text editing on Mac - update ctrl modifier usage to command, etc.

The input line is too long. The syntax of the command is incorrect.

Running the latest build on the current version of Windows.

When running Basic4GLj.bat from a Command-Prompt, I get the following error...

The input line is too long.
The syntax of the command is incorrect.

In Basic4GLj.bat the following line contains too many characters...

set CLASSPATH=%APP_HOME%\lib\app.jar;%APP_HOME%\lib\RSyntaxTextArea.jar;%APP_HOME%\lib\library-1.0-SNAPSHOT.jar;%APP_HOME%\lib\lwjgl-javadoc.jar;%APP_HOME%\lib\lwjgl-natives-macos-arm64.jar;%APP_HOME%\lib\lwjgl-openal-javadoc.jar;%APP_HOME%\lib\lwjgl-natives-windows-x86.jar;%APP_HOME%\lib\lwjgl-stb-natives-windows-arm64.jar;%APP_HOME%\lib\lwjgl-glfw-natives-macos-arm64.jar;%APP_HOME%\lib\lwjgl-glfw-natives-windows-x86.jar;%APP_HOME%\lib\lwjgl-openal-natives-linux-arm64.jar;%APP_HOME%\lib\lwjgl-openal-natives-macos.jar;%APP_HOME%\lib\lwjgl-opengl-javadoc.jar;%APP_HOME%\lib\lwjgl-assimp-natives-macos-arm64.jar;%APP_HOME%\lib\lwjgl-assimp-natives-windows-x86.jar;%APP_HOME%\lib\lwjgl-glfw-natives-linux.jar;%APP_HOME%\lib\lwjgl-opengl-natives-windows.jar;%APP_HOME%\lib\lwjgl-stb-natives-windows.jar;%APP_HOME%\lib\lwjgl-openal-natives-windows-arm64.jar;%APP_HOME%\lib\lwjgl-stb.jar;%APP_HOME%\lib\lwjgl-stb-natives-linux.jar;%APP_HOME%\lib\lwjgl-glfw-natives-windows.jar;%APP_HOME%\lib\lwjgl-natives-linux-arm64.jar;%APP_HOME%\lib\lwjgl-glfw.jar;%APP_HOME%\lib\lwjgl-opengl-natives-linux-arm32.jar;%APP_HOME%\lib\lwjgl-stb-natives-linux-arm32.jar;%APP_HOME%\lib\lwjgl-assimp-natives-linux.jar;%APP_HOME%\lib\lwjgl-natives-macos.jar;%APP_HOME%\lib\lwjgl-openal-natives-macos-arm64.jar;%APP_HOME%\lib\lwjgl-glfw-natives-linux-arm64.jar;%APP_HOME%\lib\lwjgl-openal-natives-windows-x86.jar;%APP_HOME%\lib\lwjgl-assimp-javadoc.jar;%APP_HOME%\lib\lwjgl-glfw-javadoc.jar;%APP_HOME%\lib\lwjgl.jar;%APP_HOME%\lib\CodecIBXM.jar;%APP_HOME%\lib\lwjgl-assimp-natives-linux-arm64.jar;%APP_HOME%\lib\lwjgl-opengl-natives-macos.jar;%APP_HOME%\lib\lwjgl-opengl-natives-windows-arm64.jar;%APP_HOME%\lib\lwjgl-assimp-natives-windows-arm64.jar;%APP_HOME%\lib\lwjgl-opengl-natives-macos-arm64.jar;%APP_HOME%\lib\lwjgl-opengl-natives-windows-x86.jar;%APP_HOME%\lib\CodecWav.jar;%APP_HOME%\lib\lwjgl-assimp-natives-macos.jar;%APP_HOME%\lib\lwjgl-openal-natives-linux-arm32.jar;%APP_HOME%\lib\lwjgl-natives-linux.jar;%APP_HOME%\lib\lwjgl-stb-natives-windows-x86.jar;%APP_HOME%\lib\lwjgl-stb-natives-macos-arm64.jar;%APP_HOME%\lib\lwjgl-stb-javadoc.jar;%APP_HOME%\lib\lwjgl-assimp.jar;%APP_HOME%\lib\lwjgl-glfw-natives-windows-arm64.jar;%APP_HOME%\lib\lwjgl-opengl-natives-linux.jar;%APP_HOME%\lib\lwjgl-openal.jar;%APP_HOME%\lib\CodecJOrbis.jar;%APP_HOME%\lib\lwjgl-natives-linux-arm32.jar;%APP_HOME%\lib\lwjgl-opengl-natives-linux-arm64.jar;%APP_HOME%\lib\lwjgl-natives-windows.jar;%APP_HOME%\lib\lwjgl-stb-natives-linux-arm64.jar;%APP_HOME%\lib\lwjgl-openal-natives-linux.jar;%APP_HOME%\lib\lwjgl-glfw-natives-linux-arm32.jar;%APP_HOME%\lib\lwjgl-openal-natives-windows.jar;%APP_HOME%\lib\SoundSystem.jar;%APP_HOME%\lib\lwjgl-assimp-natives-windows.jar;%APP_HOME%\lib\lwjgl-opengl.jar;%APP_HOME%\lib\lwjgl-assimp-natives-linux-arm32.jar;%APP_HOME%\lib\lwjgl-glfw-natives-macos.jar;%APP_HOME%\lib\lwjgl-natives-windows-arm64.jar;%APP_HOME%\lib\lwjgl-stb-natives-macos.jar;%APP_HOME%\lib\debugServer-1.0-SNAPSHOT.jar;%APP_HOME%\lib\compiler.jar;%APP_HOME%\lib\runtime-1.0-SNAPSHOT.jar;%APP_HOME%\lib\debugProtocol-1.0-SNAPSHOT.jar;%APP_HOME%\lib\flatlaf-extras-3.0.jar;%APP_HOME%\lib\flatlaf-3.0.jar;%APP_HOME%\lib\gson-2.10.jar;%APP_HOME%\lib\javax-websocket-server-impl-9.4.49.v20220914.jar;%APP_HOME%\lib\javax.websocket-api-1.0.jar;%APP_HOME%\lib\javax-websocket-client-impl-9.4.49.v20220914.jar;%APP_HOME%\lib\svgSalamander-1.1.3.jar;%APP_HOME%\lib\websocket-server-9.4.49.v20220914.jar;%APP_HOME%\lib\websocket-client-9.4.49.v20220914.jar;%APP_HOME%\lib\javax.websocket-client-api-1.0.jar;%APP_HOME%\lib\jetty-annotations-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-plus-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-webapp-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-servlet-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-security-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-server-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-client-9.4.49.v20220914.jar;%APP_HOME%\lib\websocket-common-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-http-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-io-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-util-ajax-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-xml-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-jndi-9.4.49.v20220914.jar;%APP_HOME%\lib\jetty-util-9.4.49.v20220914.jar;%APP_HOME%\lib\websocket-servlet-9.4.49.v20220914.jar;%APP_HOME%\lib\javax.servlet-api-3.1.0.jar;%APP_HOME%\lib\websocket-api-9.4.49.v20220914.jar;%APP_HOME%\lib\javax.annotation-api-1.3.2.jar;%APP_HOME%\lib\asm-commons-9.3.jar;%APP_HOME%\lib\asm-analysis-9.3.jar;%APP_HOME%\lib\asm-tree-9.3.jar;%APP_HOME%\lib\asm-9.3.jar

I'm assuming all those files on the Classpath are located in the lib folder so a Wildcard can be used and I can then get the IDE to appear on the screen...

set CLASSPATH=%APP_HOME%\lib\*

Basic4GLj IDE running on Windows

Reduce variable scope

Reduce variable scope to follow best practices and avoid issues with improper access to variables

  • reduce variable scope to private or protected as appropriate
  • use getters/setters where appropriate

Evaluate Dubious Note to Self

Evaluate changes made related to TODO note posted before setting the project down for 2 years..

Note to self: messed with swap buffers in the post execute at 2am
Dec 9, 2020 at 2:40 AM

Add support for dependencies in Function Specifications

FunctionSpecifications currently only support default constructors or the parent Library as a parameter as of #23.

Consider adding support for dependency injection for Functions to allow more flexible code organization for Library authors.

Consider C#'s IServiceProvider pattern to register Library dependencies.

Unable to Export JAR Program

Exported JAR is not usable - need to evaluate if an issue with Mac support, changing build requirements to Java 8, or an issue with new libraries not being included properly.

Apple Silicon Support

Need to determine which libraries need to be updated to support Apple Silicon - help is needed since I only have a Mac with Intel to test with.

Add Tutorials

Add a "Getting started" guide and step-by-step examples

Fix Inner class may be static inspections

Cleanup lint warnings in function library classes or suppress them as needed.
Verify changes do not cause a regression with Export JAR functions - I'm unsure if there was a gotcha with class path or reflection related to current export jar implementation that relies on inner classes not being static...

Re-valuate "protected void finalize()" usage

Bad port of de-constructors in original C++ source; unclear scope of issue and if appropriate to refactor as teardown method or simply remove.
Approach depends on usage around OpenGL memory allocations

Starfield4 - Starfield6 Sample Programs Blank

Sample programs Starfield4, Starfield5, and Starfield6 showing no output.
Presumably an issue with the configured OpenGL defaults - potentially some combination of the default viewport and retina displays.

Setting the vec3 on line 12 of the Starfield4 sample to stars#(i) = vec3 (0, 0 - 0, -i) displays a single star texture in the center of the screen - unable to personally confirm the behavior of the same change in the Windows version since working on Mac.

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.