在应用透视变换之前,我需要在着色器中翻转纹理。我修改了vert.glsl中的vertTexCoord ,但我不知道在swap.glsl中哪里使用它。这样做的方式就像
gl_FragColor = texture2D(texture, vertTexCoord );
Run Code Online (Sandbox Code Playgroud)
不起作用,因为我还需要在透视上修改纹理。
垂直.glsl:
#define PROCESSING_COLOR_SHADER
uniform mat4 transform;
uniform mat4 texMatrix;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 texCoord;
varying vec4 vertColor;
varying vec4 vertTexCoord;
void main() {
gl_Position = transform * vertex;
vertColor = color;
vertTexCoord = texMatrix * vec4(texCoord, 1.0, 1.0);
}
Run Code Online (Sandbox Code Playgroud)
交换.glsl:
#ifdef GL_ES
precision highp float;
#endif
// General parameters
uniform sampler2D from;
uniform sampler2D to;
uniform float progress;
uniform vec2 resolution;
uniform float …Run Code Online (Sandbox Code Playgroud) 我正在尝试将 Google Analytics 添加到我在 Android (LibGDX) 上的应用程序中。但我得到 ClassCastException
04-06 15:15:07.359: E/AndroidRuntime(7564): java.lang.RuntimeException:
Unable to start activity
ComponentInfo{com.mygdx.one4all/com.mygdx.one4all.AndroidLauncher}:
java.lang.ClassCastException: android.app.Application cannot be cast to
com.mygdx.one4all.AnalyticsApp
Run Code Online (Sandbox Code Playgroud)
当我尝试
@Override
protected void onCreate(Bundle savedInstanceState) {
//...
AnalyticsApp an = (AnalyticsApp) getApplication();
//...
Run Code Online (Sandbox Code Playgroud)
我的分析应用程序:
package com.mygdx.one4all;
import com.google.android.gms.analytics.GoogleAnalytics;
import com.google.android.gms.analytics.Tracker;
import com.mygdx.one4all.R.xml;
import android.app.Application;
public class AnalyticsApp extends Application {
private Tracker mTracker;
synchronized public Tracker getDefaultTracker() {
if (mTracker == null) {
GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
mTracker = analytics.newTracker(xml.global_tracker);
}
return mTracker;
}
} …Run Code Online (Sandbox Code Playgroud)