Intuitive and dynamic Chrome Dev Tool Extension for Three.js debugging

Overview

github logo

sceneSniff

An intuitive and dynamic Chrome Dev Tool Extension for Three.js debugging

sceneSniff is an in browser developer tool for Three.js projects. When accessing the Chrome Dev Tools window, open up sceneSniff to allow for real time adjustments and rendering of 3D objects within the scene of your browser window.

Getting Started

  1. Clone this repo to your local machine (After that, run yarn install and yarn build so that the dist directory will be built for using in step 6).
  2. Visit chrome://extensions/ in your Chrome browser.
  3. Toggle 'Developer mode' in the top right hand corner.
  4. Click 'Load unpacked' in the top left hand corner.
  5. Navigate to the sceneSniff directory and select the 'dist' folder.
  6. Ensure that you have the toggle set to on.

How to Use

  1. Open your Three.js project in the browser.
  2. Open the Inspect/Chrome Developer Tools window and select the '>>' in the navigation bar to open the dropdown menu.
  3. Select 'sceneSniff' from the dropdown menu.

Once the tool is open:

  1. Hit refresh on the current tab to refresh the browser window.
  2. Select 'Load Scene' in the top left corner of the dev tool window.

Now, by selecting the different Mesh objects that appear underneath the 'Scene' dropdown, you can live adjust the scale, positioning, and rotation of the objects within your scene.

DemoForWeb.-.Made.with.Clipchamp.1.mp4

Data Flow

If you're interested in how everything is connected, feel free to work your way through these data flow charts. One is a broad overview while the other takes you through a more step by step approach on how data is moving.

datasimple Data flow

Become a Contributer

sceneSniff is looking to build out more features. If you would like to have a hand in the further expansion of sceneSniff, please clone this repo and connect with the team on what you would like to add to the tool.

  • Some features we are looking to implement are, but not limited to:

    • Ability to change color and material of mesh objects.
    • Ability to capture light objects within the scene and adjust their attributes.
    • Ability to capture the camera within the scene and adjust its attributes.
    • A snapshot feature that would cache rendered frames to enhance debugging capabilities.

Commit Messages

  • For working branch commits a single line message is sufficient

  • For PR commits please add a longer description of the changes

  • Please author single line commit messages and PR commit titles to:

    • Start with capital letter
    • Have no trailing punctuation
    • Use imperative and present tense
    • Describe the outcome, not the process
    • Be less than 50 characters in length

Pull Requests

  • Development should be performed on branches from dev and PR'd back to dev once complete,
  • Releases will be performed by PRing to main.

Branch Names

  • Use a new branch for each new feature and eventual PR
  • Use the format of "type/descriptive-outcome"
  • Types include:
    • bugfix
    • feature
    • docs
    • testing
    • refactor The descriptive-outcome should describe what will be achieved by merging the branch

Happy debugging!

You might also like...

Simple and intuitive API Client made into a VSCode extension 😊

Simple and intuitive API Client made into a VSCode extension 😊

REST API Client Simple and intuitive API Client made into a VSCode extension. Visual Studio Marketplace • Repository • Releases Visual Studio Code ext

Dec 23, 2022

基于React开发的新一代web调试工具,支持React组件调试,类似于Chrome Devtools。A Lightweight, Easy To Extend Web Debugging Tool Build With React

基于React开发的新一代web调试工具,支持React组件调试,类似于Chrome Devtools。A Lightweight, Easy To Extend Web Debugging Tool Build With React

English | 简体中文 基于React开发的移动web调试工具 更新日志 简单易用 功能全面 易扩展 高性能 使用cdn方式,一键接入 类Chrome devtools, 内嵌React开发者工具,支持日志,网络,元素,代理,存储,性能等, 具有更好的网络捕获能力和丰富的日志展现形式 暴露内部

Dec 25, 2022

A Knative debugging tool.

A Knative debugging tool.

__ _____.__ _____/ |__/ ____\ | ______ / ___\ __\ __\| | \____ \

Oct 28, 2022

Svelte debugging tool for re-rendering components

resvelte README This is the README for your extension "resvelte". After writing up a brief description, we recommend including the following sections.

Oct 4, 2022

Colr Pickr, a vanilla JavaScript color picker component built with SVGs, with features like saving colors. Similar design to the chrome-dev-tools color picker.

Colr Pickr, a vanilla JavaScript color picker component built with SVGs, with features like saving colors. Similar design to the chrome-dev-tools color picker.

Colr Pickr Colr Pickr, a vanilla JavaScript color picking component built with SVGs, with features like saving colors. Similar design to the chrome-de

Jun 27, 2022

👁‍🗨 cleye — The intuitive CLI development tool for Node.js

👁‍🗨 cleye — The intuitive CLI development tool for Node.js

cleye The intuitive command-line interface (CLI) development tool. Features Minimal API surface Powerful flag parsing Strongly typed parameters and fl

Jan 6, 2023

Eth-explorers-extension - Chrome extension to open Ethereum addresses & transaction hash from any page on popular explorers + dashboards

Eth-explorers-extension - Chrome extension to open Ethereum addresses & transaction hash from any page on popular explorers + dashboards

eth-explorers-extension(s) This repository contains two folders with two extensions that work for address and transactions respectively. 1. eth-addres

Jan 6, 2023

Chrome extension that switches default build tool to Maven at start.spring.io

start.spring.io default to Maven On the 18th of October 2022 https://start.spring.io switched the default build tool from Maven to Gradle spring-io/st

Dec 14, 2022

The zkPass browser extension can proxy three parties TLS and generate zero-knowledge proofs

zkPass Extension zkPass a Chromium extension which can proxy three parties TLS and generate zero-knowledge proofs. Technology Dependence Multi-party c

Nov 1, 2022
Owner
OSLabs Beta
OSLabs Beta
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Text Engraving & Extrusion demo based on Three.js is implemented with Typescript and webpack5. Used THREE-CSGMesh as the core tech to achieve engraving and extrusion results

Text Engraving & Extrusion Text Engraving & Extrusion demo is implemented using Three.js, with Typescript and webpack5. Used THREE-CSGMesh as the core

Jiahong Li 3 Oct 12, 2022
three.js examples. if you are first in learning three.js , this will give you much help.

three-projected-material Three.js Material which lets you do Texture Projection on a 3d Model. Installation After having installed three.js, install i

null 22 Nov 2, 2022
A simple example repo that demonstrates the dynamic ephemeral storage solution for AWS Lambda outlined in the corresponding Storyboard Dev Blog post.

AWS Lambda Dynamic Ephemeral Storage Example A simple example repo that demonstrates the dynamic ephemeral storage solution for AWS Lambda outlined in

Storyboard.fm 3 Jun 14, 2022
A flexible, memory compact, fast and dynamic CSG implementation on top of three-mesh-bvh

three-bvh-csg An experimental, in progress, flexible, memory compact, fast and dynamic CSG implementation on top of three-mesh-bvh. More than 100 time

Garrett Johnson 208 Jan 5, 2023
Debug Extension for debugging backseat (.bs) and bssembler (.bsm) applications.

Backseat Debug Debug Extension for debugging backseat (.bs) and bssembler (.bsm) applications. This project is still a work in progress as are the bac

null 4 Oct 15, 2022
Dynamic-web-development - Dynamic web development used CSS and HTML

Dynamic-web-development ASSISNMENT I just used CSS and HTML to make a mobile int

null 1 Feb 8, 2022
dynamic-component-app is an angular application for dynamic component template creation

MyApp This project was generated with Angular CLI version 14.1.0. Development server Run ng serve for a dev server. Navigate to http://localhost:4200/

Aniket Muruskar 7 Aug 26, 2022
MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are still part of a flow in the AWS cloud remote.

MerLoc MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are

Thundra 165 Dec 21, 2022