{"id":19691599,"url":"https://github.com/stanislawfortonski/SOSEngine","last_synced_at":"2025-04-29T09:31:16.124Z","repository":{"id":64119914,"uuid":"258574647","full_name":"stanislawfortonski/SOSEngine","owner":"stanislawfortonski","description":"2D Game Engine based on HTML markup","archived":false,"fork":false,"pushed_at":"2020-05-16T13:38:59.000Z","size":26633,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-27T11:01:53.554Z","etag":null,"topics":["2d-game-engine","2d-game-engine-js","2d-game-framework","2d-game-library","collection","collision-detection","engine2d","game-developement","game-engine","pixelart"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stanislawfortonski.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-04-24T17:10:23.000Z","updated_at":"2024-04-29T14:36:20.000Z","dependencies_parsed_at":"2023-01-14T23:15:29.192Z","dependency_job_id":null,"html_url":"https://github.com/stanislawfortonski/SOSEngine","commit_stats":null,"previous_names":["stanislawfortonski/sosengine"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stanislawfortonski%2FSOSEngine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stanislawfortonski%2FSOSEngine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stanislawfortonski%2FSOSEngine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stanislawfortonski%2FSOSEngine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stanislawfortonski","download_url":"https://codeload.github.com/stanislawfortonski/SOSEngine/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251473220,"owners_count":21595024,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2d-game-engine","2d-game-engine-js","2d-game-framework","2d-game-library","collection","collision-detection","engine2d","game-developement","game-engine","pixelart"],"created_at":"2024-11-11T19:09:58.494Z","updated_at":"2025-04-29T09:31:11.451Z","avatar_url":"https://github.com/stanislawfortonski.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SOSEngine\n2D Game Engine based on HTML markup written for [MMORPG 2D Game](https://github.com/stanfortonski/sosgame)\n\nYouTube video: https://www.youtube.com/watch?v=DHoUlHN6YO0.\u003cbr\u003e\nThat is my old abandoned project of 2D engine. I had written it before I learned WebGL/OpenGL. JavaScript ES5 syntax.\n\n\n## Usage\n1. Include source JS files and CSS file. Set your `.window` size in CSS file.\n2. Add this snippet to your HTML file. You can use more this structure.\n\n\n```html\n\u003cdiv id=\"SOSEngine\" class=\"SOSEngine\"\u003e\n  \u003cdiv class=\"window\"\u003e\n    \u003cdiv class=\"scene\" data-width=\"200\" data-height=\"200\" data-texture=\"#fff\"\u003e\n    \u003c/div\u003e\n  \u003c/div\u003e\n\u003c/div\u003e\n```\n\n 3. In your JS file, you have to set scale and create `SOSEngine.Scene`, `SOSEngine.Window` and `SOSEngine.Camera`. You can set the scale only one time and before initialization. Remember: less scale == less performance!\n ```js\nSOSEngine.scale = 12;\nvar engine = SOSEngine.make($('#SOSEngine'));\n ```\n \n 4. Add some static objects to scene. Data round and texture are optional. Static objects should be included in the collision calculation. \n ```html\n \u003cdiv class=\"object\" data-x=\"15\" data-y=\"15\" data-width=\"10\" data-height=\"10\" data-round=\"0\" data-texture=\"#000\"\u003e\u003c/div\u003e\n ```\n \n 5. Add standard object to your scene.\n ```js\n var props = {height: 5, width: 5, posX: 30, posY: 30};\n var myObject = new SOSEngine.Object(props.width, props.height, props.posX, props.posY);\n engine.Scene.add(myObject);\n ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstanislawfortonski%2FSOSEngine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstanislawfortonski%2FSOSEngine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstanislawfortonski%2FSOSEngine/lists"}