{"id":111,"date":"2021-08-21T15:31:40","date_gmt":"2021-08-21T15:31:40","guid":{"rendered":"https:\/\/vanderhyde.us\/?page_id=111"},"modified":"2026-03-27T20:05:56","modified_gmt":"2026-03-27T20:05:56","slug":"projects","status":"publish","type":"page","link":"https:\/\/vanderhyde.us\/index.php\/projects\/","title":{"rendered":"Projects"},"content":{"rendered":"\n<p>For more details, you can look at my CV (<a href=\"https:\/\/vanderhyde.us\/james\/CV.docx\">DOCX<\/a>, <a href=\"https:\/\/vanderhyde.us\/james\/CV.pdf\">PDF<\/a>).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Here are some projects I&#8217;m currently working on.<\/h2>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile\" style=\"grid-template-columns:auto 41%\"><div class=\"wp-block-media-text__content\">\n<p class=\"has-text-align-left\">Virtual reality is a new medium for communication, art, and education. \u201cVR Authoring for Everyone\u201d is a software tool for novices to use to develop their own VR software from their own ideas. The block-based programming environment runs in VR or on a desktop. The programming language looks like Lisp and follows a data-oriented paradigm.<\/p>\n<\/div><figure class=\"wp-block-media-text__media\"><img decoding=\"async\" loading=\"lazy\" width=\"1450\" height=\"796\" src=\"https:\/\/vanderhyde.us\/wp-content\/uploads\/2022\/06\/Screen-Shot-2022-06-22-at-6.08.42-PM.png\" alt=\"Screen shot showing block-based code, with a cylinder, cube, and yellow octahedron behind\" class=\"wp-image-145 size-full\"\/><\/figure><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile\" style=\"grid-template-columns:32% auto\"><figure class=\"wp-block-media-text__media\"><img decoding=\"async\" loading=\"lazy\" width=\"432\" height=\"241\" src=\"https:\/\/vanderhyde.us\/wp-content\/uploads\/2021\/08\/scaffoldinghyp.png\" alt=\"Proper scaffolding implies deep learning\" class=\"wp-image-113 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>Two critical skills for succeeding in computer science are abstract reasoning and problem solving. Many students, prior to college, have lacked opportunity to hone these skills. If we are serious about diversifying the field, we need to provide support for these students. We have two published papers related to this project. \u201cScaffolding assignments: How much is just enough?\u201d (<a href=\"https:\/\/dl.acm.org\/doi\/10.5555\/3306465.3306475\">download<\/a>) and \u201cWith greater CS enrollments comes an even greater need for engaging teaching practices\u201d (<a href=\"https:\/\/dl.acm.org\/doi\/10.5555\/3007225.3007234\">download<\/a>).<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile\" style=\"grid-template-columns:auto 15%\"><div class=\"wp-block-media-text__content\">\n<p class=\"has-text-align-left\">The \u201cWorld\u2019s Tiniest\u201d series abstracts video game genres down to their simplest features. The \u201cWorld\u2019s Tiniest RPG,\u201d 2008 (<a href=\"https:\/\/vanderhyde.us\/james\/wtrpg\/index.php\">play<\/a>, <a href=\"https:\/\/github.com\/jvanderhyde\/worlds-tiniest-rpg\">source<\/a>), uses the format of a Facebook quiz to tell a story. In the \u201cWorld\u2019s Tiniest Platformer,\u201d 2010 (<a href=\"https:\/\/github.com\/jvanderhyde\/worlds-tiniest-platformer\">source<\/a>), the player runs and jumps to reach a castle. The \u201cWorld\u2019s Tiniest RTS\u201d (<a href=\"https:\/\/github.com\/jvanderhyde\/wtrts\">source<\/a>) is still in the design stage, and the \u201cWorld\u2019s Tiniest Arena Fighting Game\u201d (<a href=\"https:\/\/github.com\/jvanderhyde\/wtafg\">source<\/a>) is almost finished.<\/p>\n<\/div><figure class=\"wp-block-media-text__media\"><img decoding=\"async\" loading=\"lazy\" width=\"156\" height=\"200\" src=\"https:\/\/vanderhyde.us\/wp-content\/uploads\/2021\/08\/wtp-character.jpg\" alt=\"\" class=\"wp-image-117 size-full\"\/><\/figure><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile\" style=\"grid-template-columns:35% auto\"><figure class=\"wp-block-media-text__media\"><img decoding=\"async\" loading=\"lazy\" width=\"310\" height=\"172\" src=\"https:\/\/vanderhyde.us\/wp-content\/uploads\/2021\/08\/typing-tots-user.jpg\" alt=\"\" class=\"wp-image-121 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>\u201cTyping Tots\u201d is a game to help very young children become familiar with computers. The child presses a key on the keyboard, and the program responds by speaking the name of the key aloud and displaying the key. A more advanced version that displays images is under development.<\/p>\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Here is a sample of projects I&#8217;ve worked on in the past.<\/h2>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile\" style=\"grid-template-columns:auto 24%\"><div class=\"wp-block-media-text__content\">\n<p>\u201cJumping implementation in video games,\u201d Joseph Rioux and J. Vanderhyde, Benedictine College <a href=\"http:\/\/www.benedictine.edu\/discovery\">Discovery Day<\/a>, 2014 (<a href=\"jump-poster.pdf\">poster<\/a>, <a href=\"https:\/\/github.com\/jvanderhyde\/JumpSimulator\">source<\/a>) and ACM SIGCSE, 2015 (<a href=\"https:\/\/dl.acm.org\/doi\/10.1145\/2676723.2693639\">abstract<\/a>). Jumping is a single action in a video game allowing for limited, controllable aerial motion. This project explores the implementation of jumping in different video games.<\/p>\n<\/div><figure class=\"wp-block-media-text__media\"><img decoding=\"async\" loading=\"lazy\" width=\"508\" height=\"425\" src=\"https:\/\/vanderhyde.us\/wp-content\/uploads\/2021\/08\/jump-image.png\" alt=\"\" class=\"wp-image-124 size-full\"\/><\/figure><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile\" style=\"grid-template-columns:31% auto\"><figure class=\"wp-block-media-text__media\"><img decoding=\"async\" loading=\"lazy\" width=\"552\" height=\"300\" src=\"https:\/\/vanderhyde.us\/wp-content\/uploads\/2021\/08\/david-head.png\" alt=\"\" class=\"wp-image-127 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>\u201cTopological simplification of isosurfaces in volumetric data using octrees,\u201d J. Vanderhyde and A. Szymczak, Elsevier\u2019s <em>Graphical Models<\/em> (<a href=\"http:\/\/dx.doi.org\/10.1016\/j.gmod.2007.06.002\">download<\/a>, requires subscription). This is an expansion on our technique published at Vis \u201903 (below). We used an octree for compression and to speed up the procedure. The procedure simplifies the topology and repairs  undefined regions in <a href=\"http:\/\/en.wikipedia.org\/wiki\/3D_scanner\">laser range scans<\/a> and other volumetric data sets (<a href=\"https:\/\/github.com\/jvanderhyde\/topologycontrol\">source<\/a>).<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile\" style=\"grid-template-columns:auto 24%\"><div class=\"wp-block-media-text__content\">\n<p>\u201cExtraction of Topologically Simple Isosurfaces from Volume Datasets,\u201d A. Szymczak and J. Vanderhyde, IEEE Visualization 2003 (<a href=\"https:\/\/smartech.gatech.edu\/handle\/1853\/8347\">download<\/a>). In this paper we show how to automatically repair the <a href=\"http:\/\/en.wikipedia.org\/wiki\/Topology\">topology<\/a> of surfaces. The algorithm examines each voxel one at a time to see if removing it would create a handle.<\/p>\n<\/div><figure class=\"wp-block-media-text__media\"><img decoding=\"async\" loading=\"lazy\" width=\"268\" height=\"104\" src=\"https:\/\/vanderhyde.us\/wp-content\/uploads\/2021\/08\/buddhatop.png\" alt=\"\" class=\"wp-image-129 size-full\"\/><\/figure><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile\" style=\"grid-template-columns:18% auto\"><figure class=\"wp-block-media-text__media\"><img decoding=\"async\" loading=\"lazy\" width=\"284\" height=\"125\" src=\"https:\/\/vanderhyde.us\/wp-content\/uploads\/2021\/08\/objectviz_mac.png\" alt=\"\" class=\"wp-image-131 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p>\u201cJava Class Visualization for Teaching Object-Oriented Concepts,\u201d H. L. Dershem and J. Vanderhyde, ACM SIGCSE 1998 (<a href=\"https:\/\/dl.acm.org\/doi\/10.1145\/273133.273161\">download<\/a>). This program is an object-oriented <em>experience<\/em>. It lets you drag objects around and drop them into boxes to perform operations on them.<\/p>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>For more details, you can look at my CV (DOCX, PDF). Here are some projects I&#8217;m currently working on. Virtual reality is a new medium for communication, art, and education. \u201cVR Authoring for Everyone\u201d is a software tool for novices to use to develop their own VR software from their own ideas. The block-based programming [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"full-width-page-template.php","meta":[],"_links":{"self":[{"href":"https:\/\/vanderhyde.us\/index.php\/wp-json\/wp\/v2\/pages\/111"}],"collection":[{"href":"https:\/\/vanderhyde.us\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vanderhyde.us\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vanderhyde.us\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vanderhyde.us\/index.php\/wp-json\/wp\/v2\/comments?post=111"}],"version-history":[{"count":15,"href":"https:\/\/vanderhyde.us\/index.php\/wp-json\/wp\/v2\/pages\/111\/revisions"}],"predecessor-version":[{"id":161,"href":"https:\/\/vanderhyde.us\/index.php\/wp-json\/wp\/v2\/pages\/111\/revisions\/161"}],"wp:attachment":[{"href":"https:\/\/vanderhyde.us\/index.php\/wp-json\/wp\/v2\/media?parent=111"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}