假设我有这个目录结构:
public/
js/
lib/
test/
ts/
lib/
ts/
Run Code Online (Sandbox Code Playgroud)
我将如何配置它来编译lib/ts/*.ts,以public/js/lib/*.js和test/ts/*.ts到public/js/*.js?
我已经尝试在每个ts目录中设置一个单独的tsconfig.json outDir,但是只要我添加///<reference一个文件,编译器就会输出一个不需要的目录树(在保存和构建时).
是否可以拖动选定的文字来移动它?这几乎是在所有其他编辑器中(更不用说浏览器中的文本输入字段了.)我很惊讶在VS Code中找不到它.
这是一个gif示例.
现在有很多语言可以编译成javascript,C&C++被编译成asm.js被吹捧为最快的.我想知道有效的,编译的Javascript/asm.js还有其他候选者.我会找到一种很好的语言,在性能和现代的,更高级的编程结构之间取得平衡.现在每个人似乎都喜欢Python,但是从我读过的内容来看,它并不能用于编写最快的JS.
基于对该主题的一些初步细读,我认为Dart,Haxe,C#和Java可能是很好的候选者,但我还没有找到任何性能比较.
我想实现一个顶点缓冲区的渲染器,每个帧都会在应用程序端更新.另外,顶点的数量(即,三角形的数量)也将每帧改变.
我的方法是将一次所需的最大值预先分配为Float32Array,然后仅更新更改的值,并使用bufferSubData更新缓冲区数据.然后通过从索引缓冲区发送一个范围来绘制我想要的那些.
作为一个最小的例子,假设我已经为Float32Array中的2个独立三角形分配了位置顶点,对于这个框架,我只想移动并绘制第二个三角形.我想我会这样做:
arrPos[9] += 1.0; // move the X coordinates in the Float32Array
arrPos[12] += 1.0;
arrPos[15] += 1.0;
gl.bindBuffer(gl.ARRAY_BUFFER, bufPos); // tell GL which buffer to use
gl.bufferSubData( gl.ARRAY_BUFFER, 3 * 3 * 4, arrPos ); // update the vertices - ERROR
// then just draw the 2nd traingle by sending its indices only
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, bufId); // tell GL which buffer to use
gl.drawElements(gl.TRIANGLES, 3, gl.UNSIGNED_SHORT, 3 * 2); // draw just this range
Run Code Online (Sandbox Code Playgroud)
问题是,bufferSubData抛出错误:"GL错误:GL_INVALID_VALUE:glBufferSubData:超出范围"
我已经尝试使用bufferSubData的偏移量3,9,12来解决它,但它们都给了我同样的错误.
另一个注意事项:如果我能够正常工作,在我看来,如果我想在重新使用这个预先分配的Float32Array的同时每帧绘制可变数量的三角形,我将需要更新END处的值数组,而不是开始,因为我只能指定bufferSubData的偏移量,而不是起始索引.我希望有人可以告诉我这种方法是否可行,或者如果我完全偏离轨道并且应该停止浪费我的时间.
我刚刚学习了一些ASP.NET的入门教程,我对如何实现一个简单的CRUD管理应用程序有了一个很好的想法.
是否有任何常用的模式来实现通用的列表/创建/更新/删除操作?为每个模型构建脚手架,然后维护所有添加,编辑和列表视图和控制器似乎相当繁琐.实现通用操作会更有效,更不容易出错,例如:
/List/Model
/Edit/Model/id
/Update/Model/id
/Delete/Model/id
Run Code Online (Sandbox Code Playgroud)
可以处理任何模型.
你有一个递归函数,如:
Blah.prototype.add = function(n) {
this.total += n;
this.children.forEach(function(child) {
child.add(n);
});
};
Run Code Online (Sandbox Code Playgroud)
是child.add()尾巴吗?如果不能这样写的话呢?
我正在寻找TypedArray在d.ts文件中声明泛型类型的方法。TypedArray由于某种原因似乎不存在,但我在建议使用的地方遇到了评论ArrayLike<T>。这仍然是最佳解决方案吗?
我可以猜出是什么ArrayLike,但是是否有任何文档?谷歌搜索和搜索Typescript网站并没有太多。
编辑:我只是注意到类型化的数组构造函数被声明为以ArrayLike作为第一个参数,因此这表明这是正确的方法。
当其中一个顶点与它发生碰撞时,我试图弹出一个多边形,该多边形具有一个(不可移动的)墙上的速度和角速度.我可以检测到碰撞,并且我已经研究了如何计算输入并知道我需要什么输出,但是无法找到或计算出响应的实现.任何帮助将不胜感激.
function collisionResponse(
c, // object center of mass position
v, // velocity of object
a, // the angular velocity of the object
p, // point of contact with line
n // normalized normal of line
) {
// Make a vector from center mass to contact point
cp = p - c;
// Total velocity at contact point (add angular effect)
pv.x = v.x - cp.y * a;
pv.y = v.y + cp.x * a;
// Reflect point of …Run Code Online (Sandbox Code Playgroud)