
    niW                        S SK r S SKrS SKr\R                  R	                  \R                  R                  \R                  " \R                  " 5       5      5      5      r\R                  R	                  \R                  R	                  \5      5      r	\R                  R                  R                  S \	5        \" S\	5        S SKrS SKJr  S SKJr  S SKrS SKJr  S SKJr  S SKJr  S SK
r
S SKrSrS	rS
rS qS qS rS r \
RB                  SS r"S r#\$S:X  a  \#" \"S	5      r%\%RL                  RN                  RQ                  5       (       a  \r)\ RT                  " \)5        \%RL                  RW                  5       r,\%RL                  R[                  \,S5      (       a  \(       + r\%RL                  R[                  \,S5      (       a  S	r\(       d  \(       a  \" \%\)5        S
r\%RL                  RN                  RQ                  5       (       a  M  ggg)    Nz
parentdir=)RLWorld)PPOAgent)	ArgParser)Logger)PyBulletDeepMimicEnvMultiClipgq?TFc                 H   [         nU R                  U5        U R                  R                  SS9n[        U-  q[
        S-  qU R                  R                  5       nU(       d
  [
        S:  a5  [        S[        5        SqSqU R                  5         U R                  5         g g )Nr   )agent_id   i  ztotal_reward=)
update_timestepupdateenvcalc_rewardtotal_rewardstepsis_episode_endprintend_episodereset)worldtime_elapsedtimeSteprewardr   s        c/home/james-whalen/.local/lib/python3.13/site-packages/pybullet_envs/deep_mimic/testrl_multiclip.pyupdate_worldr      s    H	LLYY""A".FFL	QJE))**,Ku}o|, %    c           	         [        5       nUR                  U 5        UR                  SS5      nUS:X  a  SnUS:w  Ga  [        R                  " 5       S-   U-   n[
        R                  R                  U5      (       a  UR                  U5      nO[
        R                  " U5       Vs/ s HW  n[
        R                  R                  [
        R                  R                  X55      5      (       d  MF  UR                  U5      PMY     nn[        U5      n[        R                  " U5        U(       d   [        R                  " SU-   5      5       eU$ s  snf )Narg_file z run_humanoid3d_backflip_args.txtz/args/zFailed to load args from: )r   	load_argsparse_stringpybullet_datagetDataPathospathisfile	load_filelistdirjoinallr   print2)args
arg_parserr   r$   succffiless          r   build_arg_parserr0   -   s   J&&z26H2~5B((*X5@77>>$''-D68jj6Fp6F"''..Y[Y`Y`YeYefjYnJo,Z))!,6FEpu:DhKV]]#?(#JKKt	 qs   &AE/Er
   c                    [        U 5      n[        SU5        [        X!5      n[        X25      nUR	                  S5      n[        SU5        UR                  S5      n[        SU5        UR	                  S5      n[        SU5        [        R                  " 5       S-   UR	                  S	5      -   nS
n	[        SU5        [        U5       n
[        R                  " U
5      n[        SU5        X;   d   eX   n[        SU5        [        U[        U5      nUR                  S5        UR                  5         S S S 5        U$ ! , (       d  f       U$ = f)Nzenable_draw=motion_filezmotion_file=fall_contact_bodieszbodies=int_output_pathzint_output_path=/agent_files	AgentTypezagent_file=z
json_data=zagent_type=F)r0   r   r   r   r    
parse_intsr!   r"   openjsonloadr   idset_enable_trainingr   )r+   enable_drawr,   r   r   r2   bodiesr4   r6   AGENT_TYPE_KEY	data_file	json_data
agent_typeagents                 r   build_worldrE   C   s.   !$'J	.+&
'

@CC$E))-8K	.+&""#89F	)V --.?@O	
o.++-3j6M6Mm6\\K N	-%	k	iIIi(	lI&***.
mZ(I.!!%( 
 L 
	 Ls   A,D>>
E__main__ i).timer#   inspectr$   dirnameabspathgetfilecurrentframe
currentdir	parentdirsysinsertr   r:   *pybullet_envs.deep_mimic.learning.rl_worldr   +pybullet_envs.deep_mimic.learning.ppo_agentr   r!   pybullet_utils.arg_parserr   pybullet_utils.loggerr   >pybullet_envs.deep_mimic.env.pybullet_deep_mimic_env_multiclipr   randomr   	animatingstepr   r   r   r0   argvr+   rE   __name__r   r   _pybullet_clientisConnectedr   sleepgetKeyboardEventskeysisKeyTriggered r   r   <module>rd      s    	 WW__RWW__W__W=Q=Q=S-TUV
GGOOBGGOOJ78	   1i   lI   > @  / ( h 
 		$& xx|< zd#E99%%1133"

8yy**,99##D#..%I99##D#..D)D 99%%1133 r   