小编Dav*_*tos的帖子

如何在OpenGL ES 2.0中管理多个纹理?

我有一个带有6种不同纹理的OpenGL ES 2.0应用程序.我需要的是同时绘制和移动它们.我能够做到这一点,但运动是滞后的,因为我一直在将位图加载到纹理中.对于每个纹理,我在Render方法上执行以下操作:

    setupImage(texture1);
    GLES20.glVertexAttribPointer(mPositionHandle, 3, GLES20.GL_FLOAT, false, 0, vertexBufferT1);
    GLES20.glVertexAttribPointer(mTexCoordLoc, 2, GLES20.GL_FLOAT, false, 0, uvBufferT1);
    GLES20.glDrawElements(GLES20.GL_TRIANGLES, indicesT1.length, GLES20.GL_UNSIGNED_SHORT, drawListBufferT1);
Run Code Online (Sandbox Code Playgroud)

在setupImage方法上,我这样做:

    // Create the bitmap
    int id = mContext.getResources().getIdentifier("drawable/texture1", null, mContext.getPackageName());
    Bitmap bmp = BitmapFactory.decodeResource(mContext.getResources(), id);

    // Bind texture to texturename
    GLES20.glActiveTexture(GLES20.GL_TEXTURE0);
    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textures[0]);

    // Set filtering
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR);

    // Set wrapping mode
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_CLAMP_TO_EDGE);
    GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_CLAMP_TO_EDGE);

    // Load the bitmap into the bound texture.
    GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bmp, 0);

    // Free bitmap
    bmp.recycle();
Run Code Online (Sandbox Code Playgroud)

这显然是错误的.但是,我不知道如何将每个位图加载到不同的纹理中,然后如何在Render方法上切换活动纹理. …

android textures opengl-es

5
推荐指数
1
解决办法
3059
查看次数

自定义形状进度条

我正在努力为网站实现自定义进度条.这是它应该具有的形状:

进度条没有选中

当用户选择一个圆圈时,我希望线条(只有线条,而不是圆圈)用不同的颜色填充,直到它到达那个圆圈,最后红色点应该出现在中间,这是最终的结果如果用户点击了第三个圆圈:

选中项目3并突出显示路径的进度条

我不知道什么是最好,更简单的方法.我已经在线尝试了一些纯CSS,jQuery和JavaScript解决方案,但没有人可以重新创建这种效果.我应该有两个图像并逐步覆盖它们,直到我只到达点击的点吗?我是否应该完全忘记图像并尝试使用CSS或SVG重新创建形状并更改某个部分的颜色?

我知道这里的问题通常都有代码,但我无法表现出来,因为我不知道采取什么方法,在线研究时间导致无数的解决方案不适用于我的情况.

提前致谢.

javascript css svg progress-bar

3
推荐指数
1
解决办法
1590
查看次数

我可以使用setClipBounds剪辑带圆圈的视图吗?

我有以下代码来分隔要绘制的视图的区域:

Rect rect = new Rect();
rect.set(0, 0, 100, 100);
View.setClipBounds(rect);
Run Code Online (Sandbox Code Playgroud)

这将仅在指定的矩形(或在本例中为正方形)上绘制我的视图.但是,我希望将视图剪切为圆形.有没有办法以某种方式绕过Rect对象的角落?

android

3
推荐指数
1
解决办法
2975
查看次数

如何用CSS定位Firefox和IE?

从webkit浏览器到Firefox和Internet Explorer,我的网站布局略有不同.我需要针对Firefox和IE来仅在这两个浏览器中应用一些CSS.

我试过Firefox:

@-moz-document url-prefix() {
    // CSS here
}
Run Code Online (Sandbox Code Playgroud)

我试过IE这两个解决方案:

<!--[if IE]><!-->
    // Load specific CSS file here
<!--<![endif]-->

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    // CSS here
}
Run Code Online (Sandbox Code Playgroud)

但没有任何作用.我需要使用Javascript吗?如果是这样,为什么我不能像所有人似乎一样用CSS或HTML来定位它?

javascript css firefox internet-explorer

1
推荐指数
1
解决办法
4464
查看次数

如何使用AJAX更新wordpress上的post meta

我有以下代码:

<form method='post'>
<input type='submit' name='bid' value='Licitar'>
Run Code Online (Sandbox Code Playgroud)

当用户单击提交按钮时,我想更新WordPress帖子元,以便更改实际的出价值.

我还想在不重新加载页面的情况下更新以下div:

<div class='vehicle-value-box'>".auctionplugin_get_latest_bid($post->ID).",00€</div>
Run Code Online (Sandbox Code Playgroud)

我怎么能两个都做?我很难理解如何捕获$ _POST值并使用它来做上面提到的事情.我需要在哪里放置PHP处理代码并将其包含在WordPress ajax核心中?

编辑:

现在我的代码看起来像在page.php(INSIDE THE LOOP,它与PHP一起"回应"):

<div id='vehicle-value-box".$post->ID."'>".get_post_meta(get_the_ID(),'start_price', true).",00€</div>
 (...)
<div class='vehicle-auction-box'>
<script>
jQuery('input[type=submit]').click(function(e) {
    e.preventDefault();
    jQuery.ajax({
         type: 'POST',
         url: ajaxurl,
         data: 'action=newbid&id=".$post->ID."',
         success: function(msg){
    jQuery('#vehicle-value-box".$post->ID."').html(msg+',00€');
    }
});
</script>
<div>
<form method='post'>
    <input type='submit' name='bid".$post->ID."' value='Licitar' class='bidvalue'>
Run Code Online (Sandbox Code Playgroud)

和我的functions.php:

add_action('wp_ajax_newbid', 'newbid_ajax');
function newbid_ajax() {
    $post_id = $_POST['id'];
    $mybid = get_post_meta($post_id, 'start_price', true);
    $mybid = $mybid + 100;
    update_post_meta($post_id,'start_price',$mybid);
    die($mybid);
}
Run Code Online (Sandbox Code Playgroud)

php ajax wordpress

0
推荐指数
1
解决办法
1万
查看次数