我正在尝试将.obj文件加载到我的Android应用程序中并使用OpenGL 2显示它.
你可以在这里找到这个文件:编辑:我删除了文件,你可以使用任何包含下面提到的值的.obj文件进行测试.
stackoverflow上有很多类似的问题,但我没有找到一个不需要一些大型库的简单解决方案.
该文件仅包含以下值类型:
我试过libgdx,它运行正常,但它对我需要的东西有点过分.
我在没有LWJGL的情况下尝试了oObjLoader https://github.com/seanrowens/oObjLoader.解析似乎有效,但如何在简单场景中显示值?
下一步是将图像作为纹理附加到对象.但是现在我很乐意按原样显示文件.
我对不同的解决方案持开放态度,例如预转换文件,因为它只会在应用程序中出现.
谢谢!
状态更新 基本加载和显示现在可以正常工作,如我自己的答案所示.
我在开发者控制台中设置了游戏并进行了连接.登录有效,向排行榜提交分数也有效.
现在我根本无法理解显示排行榜的说明https://developers.google.com/games/services/android/leaderboards#displaying_a_leaderboard
示例代码是:
startActivityForResult(mGamesClient.getLeaderboardIntent(LEADERBOARD_ID), REQUEST_LEADERBOARD);
Run Code Online (Sandbox Code Playgroud)
哪里一切都很好但是常量REQUEST_LEADERBOARD代表什么,或者如果它已经存在,它在哪里定义?
谢谢
编辑:我不应该跳过成就教程,其中说:在示例中,REQUEST_ACHIEVEMENTS是您定义为请求代码的任意整数.所以我假设这同样适用于整数REQUEST_LEADERBOARD.
编辑2:它是一个任意整数,您定义为请求代码并正常工作.
我是angular2的新手,所以请原谅我在描述我的问题时使用了错误的术语.
我有一个简单的组件,让用户选择一个选项.现在我想将此选项分派给父组件.我这样做:
// import the necessary angular2 resources:
import {Component, Output, EventEmitter} from 'angular2/core';
...
// create the emitter in my component class:
export class MyClassThatLetsUserSelectSomeContentId{
@Output() selectEvent: EventEmitter<any> = new EventEmitter();
public selectedId: string;
// this does get called, showing the correct id in the console
onSelect(selectedItem: MyCustomItem){
this.selectedId = selectedItem.id;
console.log("selectedId:" + this.selectedId);
this.selectEvent.emit(this.selectedId);
}
}
Run Code Online (Sandbox Code Playgroud)
在主要组件中,我将其包含在模板中,如下所示:
<my-selector-component (selectEvent)="onItemSelected(selectedItemId)"></my-selector-component>
Run Code Online (Sandbox Code Playgroud)
函数确实得到了calles,但是变量是未定义的:
onItemSelected(selectedItemId: string){
console.log("onItemSelected(" + selectedItemId + ")");
}
Run Code Online (Sandbox Code Playgroud)
控制台输出是:
log:onItemSelected(undefined)
那我错过了什么?发送事件并调用函数但参数丢失.
也许对所选Id的某种其他形式的绑定会更好.只要父组件可以对视图组件中的新选择做出反应,我就可以使用任何类型的解决方案.
我需要从主题中提取默认值,但不能从当前主题中提取默认值。
我知道我可以像这样从当前主题获取属性:
TypedValue typedValue = new TypedValue();
Theme currentTheme = context.getTheme();
currentTheme.resolveAttribute(android.R.attr.windowBackground, typedValue, true);
// result is in: typedValue.data
Run Code Online (Sandbox Code Playgroud)
但我需要这样的东西:
Theme darkTheme = getTheme(R.style.AppTheme.Dark);
Run Code Online (Sandbox Code Playgroud)
...我只需要提取一个值,就不想更改当前主题。
目前的问题是我们的主题是继承自Theme.AppCompat,它似乎有一个白色滚动条,在白色背景上不可见.我知道我可以用
<item name="android:scrollbarThumbVertical">@drawable/scroll_thumb</item>
Run Code Online (Sandbox Code Playgroud)
并为自定义滚动条创建一个形状.但我只想把它改成更深的颜色.当我使用简单的彩色矩形形状时,它的宽度与普通滚动条的宽度不同.
这可能吗?