<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Otakhi Platform</title>
    <description>The latest articles on Forem by Otakhi Platform (@otakhip).</description>
    <link>https://forem.com/otakhip</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F559920%2F6172af04-99b7-46ff-a346-b2f01a468cf0.jpg</url>
      <title>Forem: Otakhi Platform</title>
      <link>https://forem.com/otakhip</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/otakhip"/>
    <language>en</language>
    <item>
      <title>A Simple and Effective Guidance System for Crowd Simulation</title>
      <dc:creator>Otakhi Platform</dc:creator>
      <pubDate>Wed, 10 Mar 2021 18:14:10 +0000</pubDate>
      <link>https://forem.com/otakhip/a-simple-and-effective-guidance-system-for-crowd-simulation-2b5h</link>
      <guid>https://forem.com/otakhip/a-simple-and-effective-guidance-system-for-crowd-simulation-2b5h</guid>
      <description>&lt;p&gt;Simulating a large crowd has always been a challenging task. It is especially true for browsers using WebGL, for harnessing the full, native power of CPU is still impossible. It is therefore imperative that an effective automatic Level-of-Detail (LOD) system, Frustum Culling, Skinned Instancing must all be implemented to reduce unnecessary communication between GPU and CPU and boost performance.&lt;/p&gt;

&lt;p&gt;Even after all that, animators are still facing the challenges on how to move each instance to create seemingly nature movement of a crowd. In this series of tutorial, we will take on this challenge. First off, how to guide instances to a set of predetermined points in space?&lt;/p&gt;

&lt;p&gt;Readers can access this tutorial at any time at &lt;a href="https://www.otakhi.com/petridish?load=15856%E2%80%8B"&gt;https://www.otakhi.com/petridish?load=15856​&lt;/a&gt; and see how it is done.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/vmsF6VGuNCY"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Behind the scene, a figure-8 path animation is added to a cockroach which also has a Walk skeletal animation. The skeletal animation is baked into a texture which is then used to drive its material in real time.&lt;/p&gt;

&lt;p&gt;We generate many copies of the same cockroaches using skinned instancing technique. Our automatic Level-of-Detail system will make sure distance cockroaches has fewer vertices than the near ones.&lt;/p&gt;

&lt;p&gt;On start-up, each cockroach is randomly placed and made to follow the figure-8 path at a random starting point. This gives the crowd a random walk appearance. On mouse click, each instance is steered toward a fixed point in space. A direction-blending technique will make sure no sudden change of direction happens. A callback function added to each instance will notify us when that cockroach has arrived at the final destination.&lt;/p&gt;

&lt;p&gt;Another callback function installed on each instance is called after each update. This gives us another opportunity to control each instance's movement… such as global repulsion and attraction force.&lt;/p&gt;

&lt;p&gt;We will use this callback to add obstacle avoidance and other neat features in next episode.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>gamedev</category>
      <category>javascript</category>
      <category>html</category>
    </item>
    <item>
      <title>Add Particle System to Spice Up Your Web Pages and Make Them More Engaging</title>
      <dc:creator>Otakhi Platform</dc:creator>
      <pubDate>Sat, 23 Jan 2021 21:41:12 +0000</pubDate>
      <link>https://forem.com/otakhip/add-particle-system-to-zest-up-your-web-pages-2hc0</link>
      <guid>https://forem.com/otakhip/add-particle-system-to-zest-up-your-web-pages-2hc0</guid>
      <description>&lt;p&gt;Particle system is traditionally used by animators to add rain, snow, smoke, and fire effects to a 3D scene.  Using WebGL and a little bit of Javascript, we can add the same effect and much more to a dull web page.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://otakhi-particle-system.tumblr.com"&gt;See all the particle effects here.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(1) Fountain of Rabbits.&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/m9GoY2Ec6aI"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;(2) Pouring Rain&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/CsswVKXVoIM"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Investigate how these pages are put together here:&lt;br&gt;
(1) &lt;a href="https://www.otakhi.com/petridish?load=15709"&gt;https://www.otakhi.com/petridish?load=15709&lt;/a&gt;&lt;br&gt;
(2) &lt;a href="https://www.otakhi.com/petridish?load=11844"&gt;https://www.otakhi.com/petridish?load=11844&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.otakhi.com/atomdrive"&gt;Learn about AtomDrive Here.&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>gamedev</category>
      <category>html</category>
    </item>
    <item>
      <title>Add Water Surface Simulation to your Web Page in 90 lines of Javascript or less</title>
      <dc:creator>Otakhi Platform</dc:creator>
      <pubDate>Sat, 16 Jan 2021 15:01:20 +0000</pubDate>
      <link>https://forem.com/otakhip/add-water-surface-simulation-to-your-web-page-in-90-lines-of-javascript-or-less-2o21</link>
      <guid>https://forem.com/otakhip/add-water-surface-simulation-to-your-web-page-in-90-lines-of-javascript-or-less-2o21</guid>
      <description>&lt;p&gt;Using a Distributed Object Framework, you can build a WebGL element by simply assembling from a repository of reusable software objects.  Once published, this object becomes available at a URL that can be placed on your web page overlaying other elements.&lt;/p&gt;

&lt;p&gt;(1) Raging River with Wave Shaping&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/AFquo2gs6q8"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;(2) Under River Nile&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/df2sxHMtQfw"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;(3) Underwater Godray Effect&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/MNQpFU1eiFg"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Investigate how these objects are put together here:&lt;br&gt;
(1) &lt;a href="https://www.otakhi.com/petridish?load=15193"&gt;https://www.otakhi.com/petridish?load=15193&lt;/a&gt;&lt;br&gt;
(2) &lt;a href="https://www.otakhi.com/petridish?load=15209"&gt;https://www.otakhi.com/petridish?load=15209&lt;/a&gt;&lt;br&gt;
(3) &lt;a href="https://www.otakhi.com/petridish?load=15218"&gt;https://www.otakhi.com/petridish?load=15218&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.otakhi.com/atomdrive"&gt;Learn about AtomDrive Here.&lt;/a&gt;&lt;/p&gt;

</description>
      <category>gamedev</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Package Javascript, CSS Rules, and HTML Fragments as Reusable, Autonomous Components</title>
      <dc:creator>Otakhi Platform</dc:creator>
      <pubDate>Fri, 15 Jan 2021 15:28:37 +0000</pubDate>
      <link>https://forem.com/otakhip/package-javascript-css-rules-and-html-fragments-as-reusable-autonomous-components-56m0</link>
      <guid>https://forem.com/otakhip/package-javascript-css-rules-and-html-fragments-as-reusable-autonomous-components-56m0</guid>
      <description>&lt;p&gt;Today's web developers share CSS rules, javascript, and HTML pages as separated files,  What if we can share them as objects at finer granularity?&lt;/p&gt;

&lt;p&gt;Imaging using a div to wrap only the video, audio, images, 2D drawings, 3D objects, shaders, animations, poses, Sqlite database, WebSocket, WebRTC, Webassembly, HTML fragments, CSS rules, and javascripts that it needs to create a smart and autonomous software objects... And building web apps is transformed to merely assembling selected few from a repository of said software objects.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gbUsOP0B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/aufjfuv41ssq6bf9qwgo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gbUsOP0B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/aufjfuv41ssq6bf9qwgo.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Such architecture allows web semantics to be included with objects...along with its graphical user interface which often consumes the most Internet bandwidth.  When combined with a Content Distribution Network (CDN), these objects can live on the EDGE and sent to the consumers at moment's notice and save enormous amount of server bandwidth.&lt;/p&gt;

&lt;p&gt;Using AI, these objects can also serve as a foundation for smart software agents - software that are automatically generated to complete a specific task.&lt;/p&gt;

&lt;p&gt;Watch a tutorial to see the tip of iceberg of what's possible.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/U0lqIO9e19k"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.otakhi.com/petridish"&gt;Test drive our editor here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.otakhi.com/showcase"&gt;View our complete video showcases here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.otakhi.com/atomdrive"&gt;Learn about AtomDrive&lt;/a&gt;&lt;/p&gt;

</description>
      <category>css</category>
      <category>javascript</category>
      <category>html</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Top-Down Object-Oriented Architecture: Why it is the most flexible, reusable, extensible, and robust approach to web middleware.</title>
      <dc:creator>Otakhi Platform</dc:creator>
      <pubDate>Thu, 14 Jan 2021 15:36:06 +0000</pubDate>
      <link>https://forem.com/otakhip/top-down-object-oriented-architecture-why-it-is-the-most-flexible-reusable-extensible-and-robust-approach-to-web-middleware-4p68</link>
      <guid>https://forem.com/otakhip/top-down-object-oriented-architecture-why-it-is-the-most-flexible-reusable-extensible-and-robust-approach-to-web-middleware-4p68</guid>
      <description>&lt;p&gt;Today's web as a distributed application platform still could not be extricated from the past 50 years of software development model born out of a single, standalone computer.  That is, software are still built from bottom up and designed from the single perspective of a service provider.  As a result, web service subscriptions implicitly bind developers to rigid information models.  Integration becomes a major problem in modern web development and is completely dictated by third parties, both feature and time-wise.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffvhywo53qwwm2nrlg3ja.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffvhywo53qwwm2nrlg3ja.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
           Figure-1: Programming Models Comparison &lt;/p&gt;

&lt;p&gt;What if we can turn this antiquated software development model on its head?  Giving web developers the power of software modeling via Unified Modeling Language(UML)-like approach from the top down, while simultaneously allowing them to integrate commercial REST API and/or compiled opern source software (WebAssembly) into micro-service providers form below, web developers can now assume complete control in creating their own semantic web, with added ability to mix and match unlimited feature sets independent of any third party.&lt;/p&gt;

&lt;p&gt;oTakhi CloudFormation Platform features a top-down object-oriented programming model (See Figure 1).  It is composed of a object repository server and a UML client, called Condenser.  Web developers use Condenser to assemble molecules into reusable components called droplets.  Published droplets are stored in the repository for others to browse and reuse.&lt;/p&gt;

&lt;p&gt;(1) Condenser and Micro-Service Providers&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/FGp-frG6u_4"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;(2) Dynamic Object Composition&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/rl5t3BNJyQ4"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;(3) Create Plug &amp;amp; Play Components from C++/C&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/CaKEV9s4o1w"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;(4) Building Distributed Web Applications&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/yUzTdXldTSE"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;(5) Managing Multiple WebGL scenes using CSS Grid&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/fANKuWUcn_M"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Please share your opinion.&lt;/p&gt;

</description>
      <category>webassembly</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>gamedev</category>
    </item>
  </channel>
</rss>
