{"_id":"voxel-physical","_rev":"34-3ed1154906443f335b62394fc2de1d21","name":"voxel-physical","description":"create objects that have aabbs and respond to accel and vel updates","dist-tags":{"latest":"0.1.3"},"versions":{"0.0.0":{"name":"voxel-physical","version":"0.0.0","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.0"},"_id":"voxel-physical@0.0.0","dist":{"shasum":"0cf25c2ae049c4924486e70a5a651f6815023784","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.0.tgz","integrity":"sha512-axc2/IozVz+5xLt1Neg/KXjhMC95N+0To+n8vPAlHW5ZnJEL0E2smMqJwD33y5Yiwe46wYesjlHDY+B5m8kWoQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAN5xIqv/LniJcpCMkC7+J+6uVUXzMRUpg60jt1paTp1AiBy2ovT8xvkaJvryYHZQOi1p8XAun1E1arqGnAjk87VLQ=="}]},"_npmVersion":"1.1.69","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.1":{"name":"voxel-physical","version":"0.0.1","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.0"},"_id":"voxel-physical@0.0.1","dist":{"shasum":"95f2b4e458c44b8f775a013641243ad4232861cb","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.1.tgz","integrity":"sha512-ERrbvvF2AsSChY/GzCkqBqwsBdT6cIzXjbuunYZwEETtgshlsottmsj1d8Vs80UdvthMzM9QKP8WM3G9ogYUPA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFdxyuLim8stWPx1/MF9ZGN8C/TZd/Bkrh8TrS+ZSKMyAiBBnAz/FJ4AsZsLm/IA01s8W2UywnOs8WpaIMz/VATMlw=="}]},"_npmVersion":"1.1.69","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.2":{"name":"voxel-physical","version":"0.0.2","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"_id":"voxel-physical@0.0.2","dist":{"shasum":"907b47fbea3f0d4ffd62b0faa27fe925866b92f0","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.2.tgz","integrity":"sha512-0gp/ln1xIOY9889dI1ViJ/BtIM4rP0cf71xHGV76AUVg4jMQFJd7Jayc5y8CJHsSlqUVUk3a+bJdY4AypFOEAw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwQzCvmJh23HP4Es9QfOuiWERjwdVX1gAks/3rqXWurQIgFkoHT7KK2gSK+iD5hnN12z7dnmxRMS+T0k8W6p4ui5w="}]},"_npmVersion":"1.1.69","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.3":{"name":"voxel-physical","version":"0.0.3","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"_id":"voxel-physical@0.0.3","dist":{"shasum":"984ad2c8c08b3b91a29652b892cda5e3b8a4b0ff","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.3.tgz","integrity":"sha512-cn2QdmRE4cmL6nlT7RL7de793PtaHz05AyT8z7Mr1DpHmOsBDmV+jbt4tzjHlgQfUKwJIFUrWBMgkJSU0UeARg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBlOtMzJcqp2O1Iph3hLLsBESbVIMTYb01HYxzZDJjFkAiEA4rF6iqcKBUy+MDr7NR2556j6VzGRdygAtHNUxSqxFkY="}]},"_npmVersion":"1.1.69","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.4":{"name":"voxel-physical","version":"0.0.4","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"_id":"voxel-physical@0.0.4","dist":{"shasum":"90ab8c095e0e756da7b2b5539de0ba167890235f","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.4.tgz","integrity":"sha512-LNLV2lptHpSBFXZqMgeHZVNMg+YYfs1oTe1ko99biqNjvejwTYS4DECnTmgNeg+lMmfPSGXVmIoIw4QbRQUJ+A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbNWPYY8fZze3uC8hCuez5CepU08WUZhSNB5JVNRETKQIgG/Re0lVCFWxmAPUXPOj1RsRPVhSEMhLPMxfDfwOWiFY="}]},"_npmVersion":"1.1.69","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.5":{"name":"voxel-physical","version":"0.0.5","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"_id":"voxel-physical@0.0.5","dist":{"shasum":"3a2fa6364dc860f82efaaf0ac49b7cd8a444bcdb","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.5.tgz","integrity":"sha512-dd0F9KYnAACcrwMAgJZ5YjpKQ3pBvqSODvf5SSocOuuh9XOeBKGUZ7/22kAjXHSf6grWAfaAhAKtUeoT13gPyw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICPS6yWGINULCU7P8Ajk6TrkaCGrZjhHTvPU5dYqKYS5AiAf8wU8O0rxhb9KygFhI8IgUzQhQNGAnZrnf7S8iWqb3w=="}]},"_npmVersion":"1.1.69","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.6":{"name":"voxel-physical","version":"0.0.6","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"_id":"voxel-physical@0.0.6","dist":{"shasum":"64e21548b39c6869d422835cbc97c99ff63fecd0","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.6.tgz","integrity":"sha512-iWg9aUEtQbzLtjG+pFHIUH8Z5MNtvw/2ynI08xpsAqVtEPHeFA4DEx7mJpVvDwO+Rj+eprn3/yiVkNJDynb7CQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDDeVES76dID+X1ENSAmYNEzoAlfyfXzw2GRr2x4/pB8AiA3x86FFnFraVuSaQxqiaRMkWRKLAFSuCwQjGaguWxXTQ=="}]},"_npmVersion":"1.1.69","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.7":{"name":"voxel-physical","version":"0.0.7","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"_id":"voxel-physical@0.0.7","dist":{"shasum":"0fe5da4df809b4400826de34ff1517fe7d1df3d2","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.7.tgz","integrity":"sha512-BWiu9kz3W6XLwRMyOSuRrONMKzzCc/iWCzLkHyuZQ8wbEHgp48SpIK+74n7672OHFz2xOgEyqCjjEknQMawkdg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCWetdNeJgWHfEUm+sE0tLslBMkZ9FMI8rLBwjV4bAOvQIgdIVrK9FLux4IMEv0WkrPXFTjSL1TCcZXIoPOlVOum5I="}]},"_npmVersion":"1.1.69","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.8":{"name":"voxel-physical","version":"0.0.8","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"_id":"voxel-physical@0.0.8","dist":{"shasum":"cb1c4f7756f355425c3c84280b2e6f072885789d","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.8.tgz","integrity":"sha512-8fAW/Co7gKwd9FD04cp57It08lMP+yyVS1ShNQwoF4yaD3AWTozrcIzaPH4ssD8hXWj29NH/gRewsBLex3H03g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCR4GZJpMFieu8sjijzUR9UarQhPRRurj3IOU73r4ozugIhALDJms4uoh83XHhOaF+DsqFXiZGS7QZRVSHa2VY2TkaN"}]},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.9":{"name":"voxel-physical","version":"0.0.9","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"_id":"voxel-physical@0.0.9","dist":{"shasum":"9e341570d72c38103e3709fae98dc368efeccfce","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.9.tgz","integrity":"sha512-hiySdS67brrkHQ1SSfdcoEDChwJKIr0igW7DnDhc46kSGAuMR0a+Pp4lrbxM5dpjGoyl6LgO/BFvCd6th7qhMw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICLm0gt/pC8Z4Cn9D3/9YROllEGCo5XNe55TNK2rKIY4AiEA0XCzw0iiP5Jo7NYbAm0rnqtnbF5g5EuGGSef69fSnNA="}]},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.0.10":{"name":"voxel-physical","version":"0.0.10","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"bugs":{"url":"https://github.com/chrisdickinson/voxel-physical/issues"},"_id":"voxel-physical@0.0.10","dist":{"shasum":"fc9f66facd6d6b4e1c422c4daab5c67eac436a58","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.0.10.tgz","integrity":"sha512-LJvyxvpFAcF1vmsqU3egBYzQs7fN5jPykhTM/vRe7YLjOgMc8QTSXCShYzdZNt30w3th+UD6vfkl5ZMkbDhcoQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHqcBF6hf2IsVfvRNAjJc7TaOEMvMtb8Z9CBfPwg628oAiB7YKxvin3NxVOTTjPkwZy2CZ5st5TlnUR2Rt3+z+NPxw=="}]},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.1.0":{"name":"voxel-physical","version":"0.1.0","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"bugs":{"url":"https://github.com/chrisdickinson/voxel-physical/issues"},"homepage":"https://github.com/chrisdickinson/voxel-physical","_id":"voxel-physical@0.1.0","dist":{"shasum":"d13e7561aa22e37653699f4dfcce258737da0317","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.1.0.tgz","integrity":"sha512-TaWIZbGbTNvXDzgVAShCY7uEYOFjuVsOptT97qoTdE9vvZpqznWl0kfZqo49YR2zjKehVlJTiHhxVuI/IMSE2A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+IrxAy+pwb6MHzOGToSkW5orPzXIxaqT8O3waq7qsIAIhAKyohYFgILwWXCMW7u2jfjzLJtpZSA8QS7gazv+whqb4"}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.1.1":{"name":"voxel-physical","version":"0.1.1","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"bugs":{"url":"https://github.com/chrisdickinson/voxel-physical/issues"},"homepage":"https://github.com/chrisdickinson/voxel-physical","_id":"voxel-physical@0.1.1","dist":{"shasum":"ddeaefbd0a4eab849378f49edcd372e5ade9829c","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.1.1.tgz","integrity":"sha512-ARJ1Yt+qjfmD6VcjUAw9BnLWAMPlvs2mG9Oz8jXnnFp/5kX7swkhrffpWO3l2kGy6QAFcEFCzUdOb+UhLz180A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIETxkiiR+VNyjcn2BW88+Sf9+P0Qzpp3KpUWW7k07njFAiEArCr8CzMz9lWhb8n5nD7rDgJEzJGrIjqIrzhV6+IIzU8="}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.1.2":{"name":"voxel-physical","version":"0.1.2","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"bugs":{"url":"https://github.com/chrisdickinson/voxel-physical/issues"},"homepage":"https://github.com/chrisdickinson/voxel-physical","_id":"voxel-physical@0.1.2","dist":{"shasum":"c6fca8ffdc554d1e7630c52e2cdbc36fdaa4574f","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.1.2.tgz","integrity":"sha512-Y2bD4xSqIlqoo0dx9qoxYV31s6TUzX1/FM2RNoDvtr2Mfh+n2To5X9h04wRpr4iy0xA3sTtCHKIyoqn0v6rEAg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCFb0usEueULMqQFsBoSlHzSLCQhbizg104oJQHysdesAIhAOi0h3gw2vvGCw9SeGCdBWYMfgxIcpwgkn6uQTQM+EpO"}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]},"0.1.3":{"name":"voxel-physical","version":"0.1.3","description":"create objects that have aabbs and respond to accel and vel updates","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"keywords":["voxeljs","physics"],"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"license":"MIT","gitHead":"1b2a372bce5fb9fd460e231c0cea8fcc5d6e2352","dependencies":{"three":"0.X.X","aabb-3d":"0.0.X"},"bugs":{"url":"https://github.com/chrisdickinson/voxel-physical/issues"},"homepage":"https://github.com/chrisdickinson/voxel-physical","_id":"voxel-physical@0.1.3","dist":{"shasum":"ac0afed61e9514ffb39446a7ade81a43d20a3cdf","tarball":"https://registry.npmjs.org/voxel-physical/-/voxel-physical-0.1.3.tgz","integrity":"sha512-x12aqLHeknRiQDDLwuXKcAcTSX3IoRvXhscOkDDkRr+r8tf1bCWL1dxtgAJJyI5jH7MHS435fsyvAtrxHYD+Ow==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCpXKmzIqlRUTfJSOprgC6PmUF7m/77KA1S2rFhKJvP7QIgUcJKGw4BBMoCZ9J+2vRvDP4WsVuTDZdn9qbkE/zUBoI="}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"chrisdickinson","email":"chris@neversaw.us"},"maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}]}},"readme":"# voxel-physical\n\ncreate voxel-js objects that are affected by physics!\n\n```javascript\n// typical usage:\nvar game = require('voxel-engine')({})\n  , object = new THREE.Mesh()\n\nvar physics = game.makePhysical(object)\ngame.addItem(physics)\ngame.scene.add(object)\n\n// direct usage:\nvar physical = require('voxel-physical')\n\nvar physics = physical(\n    object\n  , game.potentialCollisionSet()    // list of objects providing a `collide(otherObject, otherBBox, desiredVector, resting map)\n \n  , new THREE.Vector3(10, 10, 10)   // how big am i? w/h/d\n  , new THREE.Vector3(30, 5.6, 30)  // what's my terminal velocity?\n) \n\ngame.addItem(physics)\ngame.scene.add(object) \n\n```\n\n## API\n\n#### physics.aabb() -> aabb-3d instance\n\nCreate a bounding box for the physics.\n\n#### physics.subjectTo(vec3 force) -> physics\n\nState that the object is subject to this force every frame -- i.e., gravity.\n\n#### physics.avatar -> THREE.Mesh / THREE.Object3D\n\nThe target of the physics. All physics are applied in this object's world space (so,\nif you have a player, they're comprised of `yaw`, `pitch`, and `roll` Object3D instances along with\nmeshes -- `roll` and `pitch` are contained by `yaw`, so `yaw` is the outermost object in this\ncase.)\n\n#### physics.resting -> {x: [-1, 0, 1], y: [-1, 0, 1], z: [-1, 0, 1]}\n#### physics.atRestX() -> [-1, 0, 1]\n#### physics.atRestY() -> [-1, 0, 1]\n#### physics.atRestZ() -> [-1, 0, 1]\n\nDescribes each of the **local** axises and whether or not the object is resting in that **local** axis (and in what direction).\n\n#### physics.acceleration -> THREE.Vector3\n\nThe avatar's current acceleration in local space (or change in velocity over a frame).\n\n#### physics.velocity -> THREE.Vector3\n\nThe avatar's current velocity in local space (or change in position over a frame).\n\n#### physics.friction -> THREE.Vector3\n\nThe degree by which to scale velocity on each axis for a given frame. Reset to `1.0` during\n`physics.tick(dt)` before the collisions for this frame are calculated and applied. Colliding\nobjects may change the object's friction in any one of the axises during their `collide` call.\n\n#### physics.tick(dt)\n\nCalled by `voxel-engine`.\n\nFor each axis, acceleration is calculated (`accel/8 + forces.x`); acceleration is applied to\nvelocity (`(velocity + accel) / friction`), and a desired local vector is created from velocity\n(`vel > terminal ? terminal : val`).\n\nThen a world desired vector is created from that local desired vector. Friction is reset to `1.0`.\nResting state for all axis is reset to `0`. Then, the potential collision set is iterated, and those\ncalls receive the physics object, the world desired vector, the current bounding box, and the current resting state, and are **expected to modify these variables when there is a collision** (i.e., when we\ncollide with terrain, the friction is modified on opposite axes from the collision; we set the resting\nstate of the object on the colliding axis to the \"direction\" of impact, and we modify the desired world vector to implement the collision).\n\n\n### tiny tips\n\n* Don't modify `physics.avatar.position` directly! Prefer to modify the `acceleration` or `velocity` -- this gives you much more realistic looking motion.\n\n* Remember, all of the force/accel/velocity/friction/resting states are **in local space**, not world space. Collisions happen in **world space**. You have to translate back to **local space** to apply changes.\n\nAs a concrete example, the voxel avatar's player is governed by a physics object attached to the `yaw` (the rotation around the Y axis -- looking left and right). So, our physics attributes look like this:\n\n````\nlocal space                 world space\n                             \n      -z                      -lz    +lx \n      ^                         \\  /\n      |                          \\/\n-x <-----> +x                    /\\\n      |                         /  \\\n      V                      -lx    +lz \n      +z\n````\n\nWhich is to say, the rotation of `yaw` affects the world vectors described by the local physical attributes of your player!\n\n* Use `voxel-control` to implement AI/etc. Instead of describing motion in terms of movements, you can\ndescribe motion in terms of `state.forward = true`, etc, over several frames.\n\n# LICENSE\n\nMIT\n","maintainers":[{"name":"chrisdickinson","email":"chris@neversaw.us"}],"time":{"modified":"2022-06-28T18:31:41.309Z","created":"2013-02-03T00:10:58.588Z","0.0.0":"2013-02-03T00:10:59.407Z","0.0.1":"2013-02-03T00:33:05.917Z","0.0.2":"2013-02-11T00:23:35.304Z","0.0.3":"2013-02-17T19:24:37.423Z","0.0.4":"2013-02-18T22:57:51.247Z","0.0.5":"2013-02-21T23:00:27.397Z","0.0.6":"2013-02-28T04:30:42.698Z","0.0.7":"2013-03-02T00:31:42.560Z","0.0.8":"2013-03-26T21:13:16.973Z","0.0.9":"2013-06-11T04:36:36.034Z","0.0.10":"2013-07-24T05:29:17.875Z","0.1.0":"2014-05-03T18:14:24.186Z","0.1.1":"2014-05-05T01:01:51.688Z","0.1.2":"2014-05-07T03:17:24.811Z","0.1.3":"2014-05-07T04:45:37.194Z"},"author":{"name":"Chris Dickinson","email":"chris@neversaw.us"},"repository":{"type":"git","url":"git://github.com/chrisdickinson/voxel-physical.git"},"homepage":"https://github.com/chrisdickinson/voxel-physical","keywords":["voxeljs","physics"],"bugs":{"url":"https://github.com/chrisdickinson/voxel-physical/issues"},"license":"MIT","readmeFilename":"README.md","users":{"fgribreau":true}}