Положение камеры React-360 в поле зрения

Я хочу установить вид с камеры выше по сравнению с визуализированным видом. Но я не знаю, где я мог бы установить исходное положение камеры при рендеринге вида.

Мой компонент монтируется следующим образом:

import {ReactInstance} from 'react-360-web';

function init(bundle, parent, options = {}) {
  const r360 = new ReactInstance(bundle, parent, {
    // Add custom options here
    fullScreen: true,
    ...options,
  });

  // Render your app content to the default cylinder surface
  r360.renderToSurface(
    r360.createRoot('Hello360', { /* initial props */ }),
    r360.getDefaultSurface()
  );
}

window.React360 = {init};

И компонент выглядит так:

export default class Hello360 extends React.Component {
  // Our component will keep track of this state
  state = {
    count: 0,
  };
  render() {
    return (
      <View style={styles.panel}>
        <View style={styles.greetingBox}>
          <Text style={styles.greeting}>
            Hello React
          </Text>
          <Text style={styles.greeting}>
            {`Count: ${this.state.count}`}
          </Text>
        </View>
      </View>
    );
  }
};

const styles = StyleSheet.create({
  panel: {
    // Fill the entire surface
    width: 1000,
    height: 600,
    backgroundColor: 'rgba(255, 255, 255, 0.4)',
    alignItems: 'center',
    justifyContent: 'center'
  }
});

AppRegistry.registerComponent('Hello360', () => Hello360);

Я попытался добавить атрибут преобразования в элемент стилей, но это не сработало. Как изменить положение камеры относительно установленного компонента Hello360 в этом примере?


person bear    schedule 07.05.2018    source источник


Ответы (1)


Вы можете установить положение камеры выше следующим образом (внутри инициализации в client.js):

r360._cameraPosition = [0, 3, 0]; //[x, y, z], default ist [0, 0, 0]

https://github.com/facebook/react-360/blob/master/React360/js/ReactInstance.js

person Jan F.    schedule 08.05.2018
comment
как я могу вызвать это из компонента? - person bear; 09.05.2018
comment
stackoverflow.com/questions /50255894/ - person Jan F.; 09.05.2018